大家好,我在工作中遇到了返回 api 响应的问题 主要问题是
$name = "تش";
$restaurants = [
"تشك تشيكن",
"بيتزا ساخنة",
"كينتاكي",
"تشيكن سبوت"
];
foreach ($restaurants as $restaurant) {
if (strpos($restaurant, $name)) {
echo "founded";
}
}
有什么帮助吗?
您的第一个参数应该是
$item
,然后您要搜索的关键字是 $search
所以你的代码应该是这样的:
$item = "أهلا وسهلا بكم";
$search = "وسهلا";
if (strpos($item, $search)){
echo "founded";
}else {
echo "not founded";
}
strpos中的第一个参数应该是
haystack
,这是您要搜索的字符串,第二个参数是needle
,这是您要搜索的字符串
<?php
$item = "أهلا وسهلا بكم";
$search = "وسهلا";
// look if $search is in $item
if (strpos($item, $search)){
echo "founded";
}else {
echo "not founded";
}
基于这个duplicate,阿拉伯字符是使用多字节字符编码的,所以你需要使用
grapheme_strpos()
if (function_exists('grapheme_strpos')) {
$pos = grapheme_strpos($tweet, $keyword);
} elseif (function_exists('mb_strpos')) {
$pos = mb_strpos($tweet, $keyword);
} else {
$pos = strpos($tweet, $keyword);
}
终于找到答案了
$name = "تش";
$restaurants = [
"تشك تشيكن",
"بيتزا ساخنة",
"كينتاكي",
"تشيكن سبوت"
];
foreach ($restaurants as $restaurant) {
if (strpos($restaurant, $name) !== false) {
echo "founded";
}
}