首页 > 解决方案 > 在数组中搜索特定值并返回值

问题描述

$meal_type= "Free Breakfast|Free Wireless";
if ($meal_type != '' && $meal_type !='None') {
    $meal = explode('|', $meal_type);

    $meal = array_search('Breakfast',$meal);

    $meal = $meal_type;
} else {
    $meal= 'No Breakfast';
}
echo $meal;

这是我的代码。在这里我想Breakfast在数组中搜索并返回搜索到的值,如果没有找到返回No Breakfast

在这里,我用 | 将字符串分解为数组 符号和返回数组搜索早餐如果存在返回资助数组值,否则回显无早餐值。

标签: phparrays

解决方案


一个简单foreach()的就可以完成这项工作:-

<?php
$match_counter =0;
$array = Array
(
    0 => 'Free Breakfast',
    1 => 'Free Wireless Internet'
);
$search = 'Breakfast';

foreach($array as $arr){
    if(stripos($arr,$search) !==false){
        echo $arr.PHP_EOL;
        $match_counter++;
    }
}
if($match_counter ==0){
    echo 'No '.$search;
}

输出:-

https://3v4l.org/ogOEB(发现出现)

https://3v4l.org/AOutTJ(未发现出现)

https://3v4l.org/NTH1W(发现不止一次)

参考:-stripos()


推荐阅读