Как найти выделенную строку в foreach?
Это перебирает всех пользователей моей базы данных, и я хочу найти все, скажем, $ um.
$um = "Um";
foreach($users as $user){
# find here the string um or something
echo $user;
}
Как мне это сделать?
$um = "this is string contains um";
$keyword[] = "um"; // the word/parts you wanna highlight
$result = $um;
foreach($keyword as $key) {
$result = str_replace($key, "<strong>$key</strong>", $result);
}
echo $result;
На самом деле, я бы сделал это в запросе .. ..но
$um = "Um";
foreach($users as $user){
if(strpos($user,$um) !== false){
echo $user;
}
}
strpos()
возвращает позицию строки, поэтому возвращаемое значение «0» будет совпадением в начале строки. Итак, проверьте «не ложь» http://php.net/manual/en/function.strpos.php
Вы могли бы использовать preg_match
$um = "Um";
foreach($users as $user){
if( preg_match( "@$um@", $user, $matches ) ) echo $user;
}