【发布时间】:2012-08-01 12:36:42
【问题描述】:
所以,这是我的情况:
我将一些输入存储在变量 ($keywords) 中。
这个变量可以是一个字符串(=1 个关键字)——比如"banana",也可以是一个数组(=多个关键字)——比如array ("banana","apple","mango")。
这就是我使用它的方式:
foreach ($keywords as $keyword)
{
// do sth with $keyword
}
当$keyword 是一个数组时,这可以正常工作,但是当它不是时,我会出错。 (很明显)
什么是最有效的解决方法,以避免错误,同时保持我的foreach 结构不变?
这是我想到的(放在循环之前),但我不太喜欢它:
if (count($keywords)==1) $keywords = array($keywords);
更新:伙计们,我知道is_array。我的观点是尽可能优雅地做到这一点,不要添加代码块或使用 switch 或 if/else 语句等造成混乱。
【问题讨论】: