用PHP评估一个字符串

问题描述:

好吧。我遇到了eval()的问题;函数在PHP中。我不太明白如何将返回的数据存储到一个变量打印..我的代码如下:用PHP评估一个字符串

<?php 
    $a = 4; 
    $write = eval("$a+$a;"); 
    echo $write; 
?> 

我不知道我在做什么错。当我运行PHP脚本,它的作用是没有一点输出.. 任何帮助表示赞赏

+1

*“中的eval()语言结构是非常危险的,因为它允许执行的任意PHP代码,因此不鼓励使用它。“* http://php.net/manual/en/function.eval .php – Joseph 2012-03-17 06:35:47

+2

是的,我知道 - 我只是想知道如何使用它,以防I **以后需要**。我尝试了几个不同的版本..没有工作。我现在正在学习PHP,所以我试图获取尽可能多的关于它的功能和尽可能多的信息。 – Kinz 2012-03-17 06:37:01

PHP documentation

的eval()回报NULL除非回报是在评估代码中调用,在这种情况下,传递给的值返回被返回。

+0

谢谢,嘿。我读了5次 - 我想我没有读得透彻。非常感激!将在7分钟内接受答案。 – Kinz 2012-03-17 06:40:21

尝试eval("\$write = \$a+\$a;")

http://php.net/manual/en/function.eval.php

<?php 
    $a = 4; 
    eval("\$write = \$a+\$a;"); 
    var_dump($write); 
?> 

它将返回INT(8)

<?php 
    $a = 4; 
    $write = eval("return $a+$a;"); 
    echo $write; 
?> 
+2

你应该总是包含你提出的解决方案的解释和背景信息 – Michal 2012-03-17 16:23:27