Php I';我正在重复我的strpos关键字检查,但我没有';我不想
我正在从关键字($keywords)列表中提取多个值($arr)。稍后,我将使用strpos检查文档中是否存在该关键字 我可以复制整个代码并逐个手动添加每个$arr,比如:strpos($element,$arr[0]);STRPO($element,$arr[1]);strpos($element,$arr[2]) 有谁能帮我把它设置好,这样我就不用走很长的路了。假设我总共需要20美元的arr支票。这将是$arr[0]到$arr[19]Php I';我正在重复我的strpos关键字检查,但我没有';我不想,php,arrays,strpos,Php,Arrays,Strpos,我正在从关键字($keywords)列表中提取多个值($arr)。稍后,我将使用strpos检查文档中是否存在该关键字 我可以复制整个代码并逐个手动添加每个$arr,比如:strpos($element,$arr[0]);STRPO($element,$arr[1]);strpos($element,$arr[2]) 有谁能帮我把它设置好,这样我就不用走很长的路了。假设我总共需要20美元的arr支票。这将是$arr[0]到$arr[19] <?php $str= "$keywords";
<?php
$str= "$keywords";
$arr=explode(",",$str);
// print_r($arr);
$data = file($_SERVER['DOCUMENT_ROOT'].'/posts.txt');
$data=str_replace(array('<', '>', '\\', '/', '='), "", $data);
foreach($data as $element)
{
$element = trim($element);
$check_keyword = strpos($element,$arr[0]);
if ($check_keyword !== false) {
$pieces = explode("|", $element);
echo "
" . $pieces[0] . "
<a href=/blog/" . $pieces[2] . "/" . $pieces[3] . "/ ><b><font color=#21b5ec>" . $pieces[4] . "</font></b></a> <br>
";
}
else {
echo "";
}
}
?>
如果要根据$element
检查$arr
中的每个值,那么最简单的方法是使用
如果要测试$arr
中的每个值是否在$element
中,可以使用以下方法:
$check_keyword = array_reduce($arr, function ($carry, $item) use($element) {
return $carry && (strpos($element, $item) !== false);
}, true);
$check_keyword = array_reduce($arr, function ($carry, $item) use($element) {
return $carry || (strpos($element, $item) !== false);
}, false);
如果只想检查$arr
中的任何值是否在$element
中,可以使用以下方法:
$check_keyword = array_reduce($arr, function ($carry, $item) use($element) {
return $carry && (strpos($element, $item) !== false);
}, true);
$check_keyword = array_reduce($arr, function ($carry, $item) use($element) {
return $carry || (strpos($element, $item) !== false);
}, false);
我不知道我是否理解,代码不完整。你为什么不使用一个函数?你是说strpos\u数组函数?我试过了,但我想我做错了什么。我发布了一个答案,看一看。你想检查$arr中的任何值是否在$element中,或者它们是否都在$element中吗?也许在数组中可以帮上忙吗?它正在工作。多谢各位。我需要代码的第二个(任何值)版本。