我呼籲$blocks
,關於它print_r()
功能將導致數組:PHP的foreach舉止怪異
Array ([0] => template.header [1] => error [2] => emails.addEmail)
,這裏是我的代碼是:
if(count($blocks)) {
foreach ($blocks as $block) {
echo $block;
$parts = explode('.', $block);
if (count($parts) > 1) {
list($folder, $file) = $parts;
$folder = $folder . '/';
echo BASE . '/blocks/' . $folder . $file . '.php';
} else {
echo BASE . '/blocks/' . $file . '.php';
}
}
$parts = null;
}
但它的在線行爲異常和echo
3給我這個:
template.header
error
error
第三個必須是emails.addEmail
但它重複第二個。
誰能告訴我我的代碼有什麼問題嗎?
更新:我刪除了@
並將其替換爲if (count($parts) > 1)
。對不起,那些傢伙。但它與我的問題沒有任何關係!仍然需要幫助...
更新2:我在此代碼之前的某處使用$block
變量,它通過引用連接到另一個事物。通過更改該變量名稱可以解決問題。謝謝你們的幫助。
如果你離開了'include'陳述會發生什麼? –
@Jack測試它..它工作正常,不包括...請參閱:http://codepad.viper-7.com/sRIxMT – Baba
@Jack哇!我改變了包括回聲,現在它顯示'/ var/www/newsletter/blocks/template/header.php' 3次! –