0

我有这个代码:

$array = array("Keys,placeholder", "Cheese,placeholder", "Knees,placeholder");

if(in_array("Cheese", $array)) {
    print("We do indeed have cheese!");
}

else {
    print("No cheese, Gromit!");
}

但是当它检查数组时,它会检查整个东西是否是“奶酪”,而不仅仅是它是否包含文本“奶酪”。

有没有办法实现我想要的?

编辑:另外,如果只有第一位包含奶酪,我只希望触发代码;所以对于这个例子:

$array = array("Keys,placeholder", "Placeholder,cheese", "Knees,placeholder");

if(in_array("Cheese", $array)) {
    print("We do indeed have cheese!");
}

else {
    print("No cheese, Gromit!");
}

我不想触发代码。

4

2 回答 2

1

implode它:

if (strpos(implode('', $array),'Cheese')!==false) print("We do indeed have cheese!");
else print("No cheese, Gromit!");

好的,奶酪是第一位的,去:

... implode('|', $array), '|Cheese') ...
于 2013-02-27T18:11:44.507 回答
0
if (preg_match("/Cheese/i", $array)) {
  return true;
}

尝试这样的事情

于 2013-02-27T18:09:22.460 回答