Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 具有多文本值的搜索数组_Php_Arrays_Search_Foreach_Multitexturing - Fatal编程技术网

Php 具有多文本值的搜索数组

Php 具有多文本值的搜索数组,php,arrays,search,foreach,multitexturing,Php,Arrays,Search,Foreach,Multitexturing,在这个数组中,我想从值中找到单词“in”,并从该歌曲中创建新数组,包括专辑中的数字(键)歌曲 $londonCalling = array( 'song-01' => 'London Calling', 'song-02' => 'Brand New Cadillac', 'song-03' => 'Jimmy Jazz', 'song-04' => 'Hateful', 'song-05' => 'Rudie Cant Fail', 'song-06' =>

在这个数组中,我想从值中找到单词“in”,并从该歌曲中创建新数组,包括专辑中的数字(键)歌曲

$londonCalling = array(
'song-01' => 'London Calling',
'song-02' => 'Brand New Cadillac',
'song-03' => 'Jimmy Jazz',
'song-04' => 'Hateful',
'song-05' => 'Rudie Cant Fail',
'song-06' => 'Spanish Bombs',
'song-07' => 'The Right Profile',
'song-08' => 'Lost in the Supermarket',
'song-09' => 'Clampdown',
'song-10' => 'The Guns of Brixton',
'song-11' => 'Wrong Em Boyo',
'song-12' => 'Death or Glory',
'song-13' => 'Koka Kola',
'song-14' => 'The Card Cheat',
'song-15' => 'Lovers Rock',
'song-16' => 'Four Horsemen',
'song-17' => 'Im Not Down',
'song-18' => 'Revolution Rock',
'song-19' => 'Train in Vain');
这可以通过oneliner完成:

print_r(preg_grep('/in/', $londonCalling));

交替阵列滤波器

$res = array_filter($londonCalling , function($e){
    return strpos($e, 'in') !== false;
});

print_r([$res]);

尝试简单的foreach loop PHP教程在以下情况下非常有用
preg\u grep
是正确的选择。查找“单词”将是
/\bin\b/
(单词边界)