//include.php
<?php
echo 'ABC';
?>
//buzz.php
<?php
$a = include('include.php);
echo $a
?>
- >輸出:ABC1。給我一個解決方案(我知道爲什麼,不需要解釋);void include(包含不帶回車)
//include.php
<?php
echo 'ABC';
?>
//buzz.php
<?php
$a = include('include.php);
echo $a
?>
- >輸出:ABC1。給我一個解決方案(我知道爲什麼,不需要解釋);void include(包含不帶回車)
輸出緩衝可能是你在找什麼:
//include.php
<?php
echo 'ABC';
?>
//buzz.php
<?php
ob_start()
include('include.php'); // Added the closing quote, it's missing in your example
$a = ob_get_clean();
echo $a; // ABC
?>
echo
將輸出到輸出緩衝區,因此,如果調用呼應include.php一次,然後你不必試圖調用它再次在buzz.php中。
include()
將返回1
如果文件存在,0
如果不這樣你的代碼將輸出ABC
運行include.php時,那麼它會打印1
時,包括(「include.php」)被稱爲,因爲該文件確實存在。
如要只打印ABC
跟隨麥克的建議或簡單:
//include.php
<?php
echo 'ABC';
?>
//buzz.php
<?php
include('include.php);
?>
最後,你可以從文件中返回;
//include.php
<?php
return 'ABC';
?>
//buzz.php
<?php
$a = include('include.php');
echo $a;
?>
我想爲我的項目製作模板引擎,所以這不是我想要的。 – Snoob 2010-08-07 02:05:18
只需使用return
//include.php
return 'ABC';
//buzz.php
$data = include('include.php');
echo $data; // ABC
你的問題是這樣的:
$a = include('include.php);
include()
將返回Boolean如果包括成功,那麼$一個爲TRUE,它被轉換爲當您輸出它時,請輸入1
。
我知道爲什麼,不需要解釋:) – Snoob 2010-08-07 05:41:54
這是一個措辭不佳的問題。有什麼要求? – esqew 2010-08-07 01:50:59
我想輸出abc,而不是abc1,(壞英文) – Snoob 2010-08-07 01:51:50
因此,丟失'$ a ='和'echo $ a'部分。 – 2010-08-07 01:52:48