无法将字符转换为整数值
Can't convert char to int value
请参阅我的代码如下,
<div class="product_id" id="3"></div>
<?php
$id = "<script>id = $('.product_id').attr('id');document.write(parseInt(id));</script>";
echo "<br>";
echo $id;
echo "<br>";
echo intval($id);
?>
如果我执行此代码输出是,
3
0
我不知道为什么它没有转换。我需要显示为,
3
3
谢谢
PHP 不知道 JavaScript 显示什么,因为它在浏览器中运行。看看你的源代码,你就会明白我的意思。第一个"3"实际上不是"3"。这是JavaScript代码。Javascript代码是一个字符串,intval"cast"为"0"。
试试喜欢。你需要像这样TypeCast
它
echo (int)$id;
intval($id)
试图将"<script>...</script>"
转换为整数,当然失败了。看看文档(intval
),"返回值"部分告诉:
成功时 var 的整数值,失败时为 0。
另请记住,echo
打印服务器端,而document.write
打印浏览器端。现在,让我们来看看你的PHP代码:
<div class="product_id" id="3"></div>
<?php
$id = "<script>id = $('.product_id').attr('id');document.write(parseInt(id));</script>";
echo "<br>"; // prints "<br>"
echo $id; // prints "<script>id = $('.product_id').attr('id');document.write(parseInt(id));</script>"
echo "<br>"; // prints "<br>"
echo intval($id); // prints "0" (since intval failed)
?>
以下是按原样加载到浏览器中的结果 HTML:
<div class="product_id" id="3"></div>
<br>
<script>id = $('.product_id').attr('id');document.write(parseInt(id));</script>
<br>
0
相关文章:
- 通过 ajax 将整数转换为字符串
- 有没有一种简单的方法可以将整数转换为等效文本.即:1变为1
- 将64位整数转换为json编码对象中的字符串的最佳实践
- 我在 JavaScript 中将整数转换为文本时遇到错误
- 在 JavaScript 中将大整数转换为 8 字节数组
- 如何将双引号整数转换为整数
- 用Javascript将大整数转换为十六进制字符串
- 如何在 JavaScript 中将整数转换为二进制
- Javascript-将整数转换为位数组
- 下划线 JS _.partial 减少维护备忘录引用并将整数转换为字符串
- JavaScript将RGB整数转换为十六进制
- 将1个整数转换为1.0-(不能是字符串)
- 如何将整数转换为字符串
- 将JS数组UNIX日期整数转换为JS日期对象
- 在javascript中,将整数转换为小数部分的最有效方法是什么?
- 将整数转换为罗马数字-一定有更好的方法
- 将整数转换为alpha有序列表的等价物
- JavaScript将科学记数法中的不安全整数转换为字符串
- 在javascript中将32位整数转换为4字节的数据
- 将双字节整数转换为单个字节- javascript