如何在数组中搜索几个单词

问题描述 投票:0回答:1

我希望我能像这样:

($arr, 'fghi'); // true

($arr, 'fghp'); // true

($arr, 'fjrstp'); // true

数组必须:

$arr = [
['f', 'g', 'h', 'i'],
['j', 'k', 'p', 'q'],
['r', 's', 't', 'u']
];

这是我的代码

<?
$arr = [
    ['f', 'g', 'h', 'i'],
    ['j', 'k', 'p', 'q'],
    ['r', 's', 't', 'u']
    ];
$index1 = array_search( 'fghi',$arr);
$index2  = array_search('jkpq', $arr);
$index3 = array_search('fjrstp',$arr);
echo $index1.'';
echo $index2.'';
echo $index3.'';
?>
php arrays search
1个回答
1
投票

将多维数组转换为一维数组

将搜索字符串转换为数组

使用array_diff()进行检查

<?php


$arr = [
    ['f', 'g', 'h', 'i'],
    ['j', 'k', 'p', 'q'],
    ['r', 's', 't', 'u']
    ];

$search  = 'fghi';
$searchArr = str_split($search);

$arr = call_user_func_array('array_merge',$arr);

if(count(array_diff($searchArr,$arr)) == 0){
    echo "true";
}else{
    echo "false";
}

输出:https://3v4l.org/AYaUU

注意:-除了$arr = call_user_func_array('array_merge',$arr);,您也可以执行$arr = array_merge(...$arr);

© www.soinside.com 2019 - 2024. All rights reserved.