PHP 操作 + 数组


PHP Operations + Arrays

我需要一些帮助。

我有一个数组 ($array) - 数组 ( [0] => 1374410400 [1] => 1374394500 [2] => 1374384000 [3] => 1374304800 [4] => 1374291900 )。

将在数组中使用的操作由用户定义。操作可以是array_sum、计数和结束。

我想"合并"这两者(数组+操作),就像这个$operation一样。(".$array.")"。

当我附和这$operation时。(".$array.")"。仅显示计数(数组)。

但是当我写"count($res)"时会出现结果。

有人知道答案吗?

看起来你需要"变量" 查看文档

echo $operation.'('.$array.')';

将回显由字符串 $operation + 字符串( + 字符串 + 字符串 $array+ 字符串)组成的字符串 + 字符串 )。

如果要执行名称存储在$operation中的操作,最简单的语法为:

echo $operation($array);

注意:您几乎肯定希望对用户的输入进行一些验证,否则如果他们使用未定义的函数等,您将获得致命错误。

是的,它只会打印字符串,使用该函数获得所需的结果。 函数函数名称($operation, $array){ if($operation =='count'){ 返回计数($array); } }

请参阅call_user_func()的文档。

$results = call_user_func($operation, $array);

确保不允许用户直接设置$operation变量的值。否则,恶意用户可能会在您的服务器上执行不需要的代码。使用用户输入来确定要运行的操作。