<?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
为什么?
<?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
为什么?
echo
在技术上不是PHP的功能。这是一个“语言结构”。
echo('Huh?')
是echo 'Huh?'
一种语法你可以这样做,而不是:
function my_echo($s) {
echo $s;
}
$a = "my_echo";
$a("Huh?");
回声是一个语言结构而非函数。你试图做的事情将与实际功能一起工作。像这样的东西会奏效。
<?php
function myecho($src) { echo $src; }
$a = 'myec';
$b = 'ho';
$c = $a.$b;
$c('This is a test');
?>
echo
,print
,die
,require
,require_once
,include
,include_once
和其他人(我相信我错过了一些)都没有的功能,但是语言构造。在括号中使用echo()
就是语法糖。
如果你想使用它们就像你有你上面需要将其包装成一个功能:
<?php
function echoMyEcho($str){
echo $str;
}
$c = "echoMyEcho";
$c("Let go of my eggo");
你不必一行11这一切吗?你在哪里分配$ c回声? – lod3n 2009-09-23 04:05:38
对不起,我从原始代码编辑了一下,并没有重新运行。 – qwzybug 2009-09-23 04:32:12