PHP字符串到整数转换不使用此代码

时间:2018-02-22 07:14:33

标签: javascript php type-conversion

在将字符串转换为整数之前,一切正常。转换后,该值变为0.为什么?

"careOffering": [
         {
            "id": 3,
            "careOptionId": 1713,
            "schoolId": 422,
            "schoolName": "ABC Learning",
            "careOfferingName": "Before School",
            "spaceAvailable": null,
            "careOfferingSpaceAvailableId": 3
          }, {
            "id": 3,
            "careOptionId": 1713,
            "schoolId": 422,
            "schoolName": "ABC Learning",
            "careOfferingName": "After School",
            "spaceAvailable": null,
            "careOfferingSpaceAvailableId": 3
         }, ...

1 个答案:

答案 0 :(得分:2)

您在变量$a中设置了一些HTML(使用JavaScript)代码。这不是有效数字!所以PHP无法将非数字字符串转换为数字/整数:

$a = "<script></script>";
var_dump($a); //string(17) "<script></script>"
settype($a, "integer");
var_dump($a); //int(0)

如果您在$a上将数值设置为字符串(或整数),则代码正常工作:

$a = "19800";
var_dump($a); //string(5) "19800"
settype($a, "integer");
var_dump($a); //int(19800)

注意:您无法直接将JavaScript的结果分配给PHP变量,因为JavaScript代码在客户端执行,PHP在服务器端执行(在JavaScript之前)。您可以使用AJAX将值从JavaScript发送回服务器,以便在服务器端使用它们。