【发布时间】:2022-01-10 16:37:14
【问题描述】:
我正在尝试查找数组中出现的子字符串。 这是字符串:
$string = "????????????????????Watch the game at @TheGoalTX on #GoaltimeSaturdays!"
这是数组:
$venues = array (
[ "name" => "McDonalds", "slogan" => "Im Lovin It" ],
[ "name" => "The Goal", "slogan" => "GoaltimeSaturday" ],
[ "name" => "McDonalds", "slogan" => "McRibs are back" ],
);
我正在运行一个数组搜索,如果任一搜索条件为真,我想在其中运行一个脚本:
foreach ($venues as $venue) {
if ((stristr($string,$venue['name'])) OR (stristr($string,$venue['slogan'])) !== false) {
include "do.stuff.php";
}
}
麦当劳的两个数组行显然失败了。没问题。
但由于某种原因,“标语”元素“GoaltimeSaturday”的搜索失败,我不太清楚为什么。它应该满足“if”标准,但永远不会达到“do.stuff.php”。
这里有一点帮助/有什么想法吗?字符串中的“”??????????????????????”表情或“#”或“@”字符可能是问题吗?我不知道为什么我在 foreach 循环中没有得到真实/肯定的搜索结果...
感谢您在这方面的帮助...
【问题讨论】:
-
我在 if 中使用了一个简单的 echo 进行了测试,它确实有效,所以可能是您包含的文件。
-
它在我的末端工作正常,没有任何问题。尝试检查包含的文件是否有任何问题。
-
看来是这样。谢谢@GarrGodfrey 和 OMi
标签: php arrays if-statement