我在myFile中设置了.php这个函数:
function monthLanguage()
{
if ($this->lang=='italian')//this statement is requared many times within the file!
{
$dayName[]="Dom";
$dayName[]="Lun";
$dayName[]="Mar";
$dayName[]="Mer";
$dayName[]="Gio";
$dayName[]="Ven";
$dayName[]="Sab";
}else
{
$dayName[]="Sun";
$dayName[]="Mon";
$dayName[]="Tue";
$dayName[]="Wed";
$dayName[]="Thu";
$dayName[]="Fri";
$dayName[]="Sat";
}
}
我正在考虑将此 if 语句包装成一个函数,以便在需要的地方调用它作为一种短代码。
我这样称呼它:
monthLanguage();
但我收到错误消息:调用未定义的函数
关于如何达到我的短代码意图的任何帮助?
您是否包含正在使用它的文件的monthLanguage
函数? 另外,我发现了此代码的两个问题。 您没有启动名为 $dayName
的array
,并且没有返回任何内容,因此该函数不会发回输出。 应该是这样的。
function monthLanguage()
{
$dayName = array();
if ($this->lang=='italian')//this statement is requared many times within the file!
{
$dayName[]="Dom";
$dayName[]="Lun";
$dayName[]="Mar";
$dayName[]="Mer";
$dayName[]="Gio";
$dayName[]="Ven";
$dayName[]="Sab";
}else
{
$dayName[]="Sun";
$dayName[]="Mon";
$dayName[]="Tue";
$dayName[]="Wed";
$dayName[]="Thu";
$dayName[]="Fri";
$dayName[]="Sat";
}
return $dayName;
}
此外,$this
不清楚,因为它通常在类的作用域中使用,所以也许你需要像这样设置函数:
function monthLanguage($lang)
{
$dayName = array();
if ($lang=='italian')//this statement is requared many times within the file!
{
$dayName[]="Dom";
$dayName[]="Lun";
$dayName[]="Mar";
$dayName[]="Mer";
$dayName[]="Gio";
$dayName[]="Ven";
$dayName[]="Sab";
}else
{
$dayName[]="Sun";
$dayName[]="Mon";
$dayName[]="Tue";
$dayName[]="Wed";
$dayName[]="Thu";
$dayName[]="Fri";
$dayName[]="Sat";
}
return $dayName;
}
然后你会像这样在 PHP 中调用该函数:
monthLanguage($this->lang);
或者像这样:
monthLanguage($lang);
但是目前还不清楚这个函数被放置或使用在哪里,所以澄清一下,以决定哪个是最好的处理方式。
我认为你不能使用 $this->lang - 如果我没记错的话,它通常是为一种方法保留的。
尝试用这个替换函数,应该像一个魅力一样工作。
function monthLanguage($lang) {
if ($lang=='italian')//this statement is requared many times within the file!
{
$dayName[]="Dom";
$dayName[]="Lun";
$dayName[]="Mar";
$dayName[]="Mer";
$dayName[]="Gio";
$dayName[]="Ven";
$dayName[]="Sab";
}else
{
$dayName[]="Sun";
$dayName[]="Mon";
$dayName[]="Tue";
$dayName[]="Wed";
$dayName[]="Thu";
$dayName[]="Fri";
$dayName[]="Sat";
}
}