当我尝试调用我创建的函数时,它不会输出任何内容。如果我直接插入功能代码它可以正常工作,但是当调用该功能时,屏幕上没有任何显示。
<?php
function MRYMENUCALL() {
echo '<div class="menu_column Left">';
foreach ($Menuitems as $Menuitem) {
if ($Menuitem['Menu'] == 1) {
if ($Menuitem['Column'] == 0) {
echo '<div class="menu_item" id="'
. $Menuitem['id']
. '" onmouseover="menu_expand(this.id);"><div class="menu_name Left">'
. $Menuitem['Name']
. '</div><div class="menu_price Right">'
. $MenuItem['Price']
. '</div><div class="menu_details Left" id="'
. $Menuitem['id']
. '"><div class="menu_description Left">'
. $Menuitem['Description']
. '</div>';
if ($Menuitem['Picture'] != NULL ){
echo '<div class="menu_picture"><img class="menu_image Right" src="/IMG/Menu/'
. $Menuitem['Picture']
. '"></div>';
}
echo '</div></div>';
}
}
}
echo '</div>';
}
//Left Menu
MRYMENUCALL();
?>
答案 0 :(得分:1)
$Menuitems
最有可能超出此功能的范围。如果你去了你的日志文件,你很可能会看到一些告诉你的东西。您需要在使用它之前在该函数内定义它,或者将其作为参数传递给该函数。
此外,找到您的php.ini文件并将display_errors
更改为1
。此外,当您在那里时将html_errors
设置为1
并重新启动apache。它将开始在页面上输出错误,而不是安静地输出到日志。
答案 1 :(得分:0)
尝试运行代码时,您将获得(demo):
<div class="menu_column Left">
Warning: Invalid argument supplied for foreach() on line 4
</div>
因此,您应该将$Menuitems
变量作为MRYMENUCALL()
函数的参数传递。试试这段代码:
<?php
// you define $Menuitems somewhere
// eg. $Menuitems = array(array('Menu' => 1, 'Column' => 0, 'id' => 1, 'Name' => Asd, 'Price' => 2, 'Picture' => asd));
function MRYMENUCALL($Menuitems) {
echo '<div class="menu_column Left">';
foreach ($Menuitems as $Menuitem) {
if ($Menuitem['Menu'] == 1) {
if ($Menuitem['Column'] == 0) {
echo '<div class="menu_item" id="'
. $Menuitem['id']
. '" onmouseover="menu_expand(this.id);"><div class="menu_name Left">'
. $Menuitem['Name']
. '</div><div class="menu_price Right">'
. $MenuItem['Price']
. '</div><div class="menu_details Left" id="'
. $Menuitem['id']
. '"><div class="menu_description Left">'
. $Menuitem['Description']
. '</div>';
if ($Menuitem['Picture'] != NULL ){
echo '<div class="menu_picture"><img class="menu_image Right" src="/IMG/Menu/'
. $Menuitem['Picture']
. '"></div>';
}
echo '</div></div>';
}
}
}
echo '</div>';
}
//Left Menu
MRYMENUCALL($Menuitems);
?>
工作演示:link on Codepad。