关于运算符的有关问题。为毛这样

时间:2016-06-13 10:44:35 来源:互联网 作者: 神秘的大神 字体:

关于运算符的问题。为毛这样?
PHP code
  if($item[$column_name] .$operation. $info)        {            echo $item[$column_name] .$operation. $info;echo '=====true';echo '
'; return true; }else{ echo $item[$column_name] .$operation. $info;echo '=====false';echo '
'; return false; }输出:508205462=505765854=====true10>1234567=====true20<66666=====true解释:$item[$column_name] 的结果就相当于运算符的第一个 ,$operation是运算符,$info是值,为什么直接写if(10>1234567)返回假,用程序运算出来全部为真??



------解决方案--------------------
因为有“.”,所以你那些变量当做字符串连接起来了
如果想让他们当做表达式运算,需用 eval 函数

eval('return '. $item[$column_name] .$operation. $info. ';')

相关文章


  • PHP如何安装和配置?
  • php 和 python 语法(部分)上的区别
  • PHP 随机数 C扩展随机数
  • PHP查询附近的人及其距离的实现方法_php技巧
  • 关于运算符的有关问题。为毛这样