有人可以用PHP填写正确的语法吗?我有:
function mainFunction($str,$thingToDoInMain){
$thingToDoInMain($str);
}
function printStr($str){
echo $str;
}
mainFunction("Hello",printStr);
我在WAMP上运行此操作并收到错误/警告
使用未定义的常量printStr - 在第5行假设'printStr'
...然后我按照需要在页面下方打印出“Hello”。
那么,如何在最后一行中引用函数printStr
来摆脱警告?我尝试过$printStr
,printStr()
和$printStr
。提前致谢。
答案 0 :(得分:5)
只需在$
函数调用之前添加thingToDoInMain
符号,使其成为正确的函数名称,因为thingToDoInMain
本身不是函数名称。而$thingToDoInMain
中包含的值是函数名称。
<?php
function mainFunction($str,$thingToDoInMain){
$thingToDoInMain($str); //Here $ is missing
}
function printStr($str){
echo $str;
}
mainFunction("Hello","printStr"); // And these quotes
?>
答案 1 :(得分:1)
在PHP中,函数名称作为字符串传递。
mainFunction("Hello", "printStr");