首页 > 解决方案 > 在 PHP 数组中搜索子字符串

问题描述

我试图在 PHP 数组中找到一个特定的字符串,如下所示。

Array ( [0] => Array ( [0] => sku,qty,is_in_stock ) [1] => Array ( [0] => EBCDAA014MAS34B,149.000000,1 ));

我正在准备上面的数组,如下所示,我将它存储在一个名为的变量中$listing

我正在使用array_find()函数来做到这一点。

function array_find($needle, array $haystack)
{
    foreach ($haystack as $key => $value) {
        if (false !== stripos($value, $needle)) {
            return $key;
        }
    }
    return false;
}

$hello = array_find('EBCDAA014MAS34B', $listing);
echo $hello;

但是,我仍然得到错误的回报。谁能告诉我这是正确的方法吗?

标签: phparrayssearchsubstring

解决方案


您的数组是一个数组数组,其中您的字符串是每个数组中的第一项$value[0]

尝试更改此行:

if (false !== stripos($value, $needle)) {

到这一行:

if (false !== stripos($value[0], $needle)) {

演示


推荐阅读