$a="9";
$b="1";
eval(chr(36)."c=$a+$b;");
echo $c;试一下。~~

解决方案 »

  1.   

    楼上的如果不行就试试,int(a)+int(b)
      

  2.   

    老大可以解释一下意思吗?原理
    另外我想知道php有没有把类似“2”“899”形式的字串直接转为数字2、899的函数呢
      

  3.   

    字符串转换为数值
    当一个字符串被当作数字来求值时,根据以下规则来决定结果的类型和值。 如果包括“.”,“e”或“E”其中任何一个字符的话,字符串被当作 float 来求值。否则就被当作整数。 该值由字符串最前面的部分决定。如果字符串以合法的数字数据开始,就用该数字作为其值,否则其值为 0(零)。合法数字数据由可选的正负号开始,后面跟着一个或多个数字(可选地包括十进制分数),后面跟着可选的指数。指数是一个“e”或者“E”后面跟着一个或多个数字。
      

  4.   

    我传回的值$_get[id]=13
    $n=et[id]+6后
    列出$_get[id]至$n条记录,竟是571-589条记录
    搞不懂
      

  5.   

    $n=$_GET[id];$nn=$n+6;$query="select * from webyao where yaolei='药' order by id desc limit $_GET[id],$nn 
    我希望的是当前ID到ID加6条
      

  6.   

    ‘9’+1 , PHP会自动把‘9’变成整型的。 这是类型戏法……用intval,floatval,doubleval等来把其他类型转换为数值型。
    <?
    $a = '9';
    echo gettype($a);
    $a = intval($a);
    echo gettype($a);
    ?>
      

  7.   

    首先 echo "1"+"9";  //out 10
    php是弱类型语言,会根据上下文自动转换到合适的类型其次你的$_GET[id]是个什么东西?
    根据select * from webyao where yaolei='药' order by id desc limit $_GET[id],$nn 
    id应该是表中的一个字段,而limit 的参数是偏移量
    就是说,如果$_GET[id]=6 那么表中 yaolei='药' 的记录数必须大于6才会有结果