-1

我在变量中有一个值,如下所示

$game = "4+9";

我希望它回显 13 ,如何将其转换为整数。

注意:我从 file_get_contents 得到 4+9 的值,

4

4 回答 4

3
echo array_sum(explode("+",$game));
于 2013-02-26T13:44:22.083 回答
0
$strings = explode("+", "4+9");
$value = intval($strings[0]) + intval($strings[1]);
echo $value
于 2013-02-26T13:42:43.560 回答
0

如果您只是处理加法,您可以通过加号运算符拆分字符串并添加数字。

$numbers = explode('+', $game);
$result = 0;
foreach($numbers as $num) {
    $result += intval($num);
}

当您开始添加其他运算符、括号等时,这将很快变得复杂。

您可以使用eval只运行文件的文本内容,但您必须确保没有人会在文件中放入任何讨厌的内容。

于 2013-02-26T13:43:07.320 回答
0

您应该使用循环将字符串分成一系列子字符串。如果您 100% 确定它只是“+”运算符,那么您可以使用如下简单代码:

$data = explode('+', $game);

回声 $data[0]+$data[1];

但是如果你有 -, / 或 * 会发生什么?

此外,您始终可以使用 eval() 函数,但由于安全问题,强烈建议不要这样做。

于 2013-02-26T13:45:53.717 回答