在类型转换php中获取错误?

时间:2016-05-13 16:31:39

标签: javascript php

我将Javascript值存储到PHP变量中。当我使用var_dump进行打印时,var_dump会返回int(0)。它应显示int(10)。我正在使用此代码:

<script type="text/javascript">
        var a = "Hello world: 12345";
        var b = a.replace ( /[^\d.]/g, '' );
    </script>
    <?php
        $identity = '<script type="text/javascript">document.write(b)</script>';
        var_dump($identity);
        echo "<br/>";
        $identity  = preg_replace('/[^\d]/', '', $identity ); //removes everything except digits
        $ord = (int)$identity;
        var_dump($ord);
    ?>

我哪里出错?

1 个答案:

答案 0 :(得分:1)

  

我哪里出错?

  1. JavaScript代码并未在php脚本中进行评估,非常基本。
  2. 您正在尝试将string转换为int,但php允许您在string包含时执行此操作字母,或 数字
  3. 如果您使用:

    $identity = '<script type="text/javascript">document.write(10)</script>';
    $identity  = preg_replace('/[^\d]/', '', $identity ); //removes everything except digits
    $ord = (int)$identity;
    var_dump($ord);
    

    php会将string转换为int而不会出错。