php - 如何使用 PHP 找出字符串中是否存在子字符串?

标签 php string

我知道很多关于这个问题的问题已经被问到,但我找不到适合我的具体问题的正确答案。

我有一个搜索字符串 - “1|1”

我有一个包含以下值的数组 - "a"=> "1|1", "b"=> "2|1,1|1", "c"=> "3|2,2|1 "

我想做的只是查找数组中是否存在搜索字符串,它应该返回数组键。如果有多个数组项具有搜索字符串,则应返回所有项。

在这个例子中,我期望得到“a”和“b”,但是当我使用 strpos() 时,它只给我“a”。

我该如何解决这个问题?

编辑**

这是我的代码

function array_search_i($str, $array)
{
    $returnArray = array();
    foreach ($array as $key => $value) {
        if (strpos($str, $value) !== false) {
            array_push($returnArray, $key);
        }
    }
    return $returnArray;
}

最佳答案

注意 !== 运算符。我们还必须检查类型..

$searchArray = array('2|2','1|1,3|3','1|1');
$search = '1|1';
foreach ($searchArray as $k=> $value) {
    if (strpos($value,$search) !== false) {
        $keysWithMatches[] = $k;
    }
}

print_r($keysWithMatches);

关于php - 如何使用 PHP 找出字符串中是否存在子字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6196673/

相关文章:

php - 如何删除 mysql_query 的第一个元素并获取所有其余元素?

php - 使用 PHP 将 ICO 转换为 PNG 问题

php - htaccess 出现问题(每个页面上都显示一个参数)

c++ - 如何在不越过缓冲区的情况下将字符串复制到 C++ 中的 char 数组中

python - 如何在 Python 中修改字符串中的单个字符?

php - JSON 解码不起作用

javascript - 当 sql 返回错误时,Jquery Ajax 显示错误 500

javascript - js中值类型的语义副本

c++ - 自动转换模板<T>到模板<const T>

C编程: Strings