<?php
$a = 'ec';
$b = 'ho';
$c = $a.$b;
echo('Huh?');
$c('Hello, PHP!');
?>
产量
Huh?
Fatal error: Call to undefined function echo() in <...>/php.php on line 11
为什么?
答案 0 :(得分:17)
echo
在技术上不是PHP中的函数。这是一种“语言结构”。
echo('Huh?')
是echo 'Huh?'
您可以这样做:
function my_echo($s) {
echo $s;
}
$a = "my_echo";
$a("Huh?");
答案 1 :(得分:3)
echo是一种语言结构,而不是一种功能。你要做的事情将与实际功能一起使用。这样的事情会起作用。
<?php
function myecho($src) { echo $src; }
$a = 'myec';
$b = 'ho';
$c = $a.$b;
$c('This is a test');
?>
答案 2 :(得分:1)
echo
,print
,die
,require
,require_once
,include
,include_once
等等(我肯定)我错过了一些)不是函数而是语言结构。括号中使用say echo()
是语法糖。
如果你想像上面那样使用它们,你需要将它们包装成一个函数:
<?php
function echoMyEcho($str){
echo $str;
}
$c = "echoMyEcho";
$c("Let go of my eggo");