Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/297.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 - Fatal编程技术网

PHP搜索数组并提取逗号

PHP搜索数组并提取逗号,php,arrays,search,Php,Arrays,Search,我有一个数组 Array ( [1]=>123,456,789,3255 [2]=>585,478,437,1237 ) 搜索文本=12 输出我想要->1237 我该怎么走 $array = array(); array_push($array,'1234',534,75,746); array_push($array,'164',574,752,755); array_push($array,'154',58,754,76); $search_text = '7

我有一个数组

Array (
    [1]=>123,456,789,3255
    [2]=>585,478,437,1237
)
搜索文本=12

输出我想要->1237

我该怎么走

$array = array();
array_push($array,'1234',534,75,746);
array_push($array,'164',574,752,755);
array_push($array,'154',58,754,76);

$search_text = '75';

I want Output = 

75,752,755,754
试试这个:

$result = [];
$array = [];
$toSearch = '75';
array_push($array,'1234',534,75,746);
array_push($array,'164',574,752,755);
array_push($array,'154',58,754,76);
// If your array is one dimension
$result = array_filter($array, function($el) use ($toSearch) {
  return strpos((string) $el, (string) $toSearch);
});
// For 2D array:
foreach ($array as $cur) {
  $result = array_merge($result, array_filter($cur, function($el) use ($toSearch) {
    return strpos((string) $el, (string) $toSearch);
  }));
}
您可以使用strpo和循环来实现这一点

$numbers=数组; 数组按$numbers,'1234',534,75746; 数组_推送$number,'164',574752755; 数组_推送$number,'154',5875476; $searchNumber='75'; $output=[]; foreach$number作为$number{ 如果strPostString$number,$searchNumber!==false{ $output[]=$number; } } // 75, 752, 755, 754 回波内爆输出; 如果您使用的是PHP8,您甚至可以用str_contains函数替换strpos


有代码尝试吗?不幸的是,我还没有编写任何代码,但是这个系列和我想要的东西是显而易见的,但对您来说并不明显?我添加了我的代码。我想要的输出仍然不是代码尝试。因为原始数组中混合了类型。我只是想把它们转换成一个字符串,因为你只是在寻找字符而不是数字。我对原始答案进行了编辑,在使用strpos之前将所有数字转换为字符串。
if (str_contains($number, $searchNumber)) { 
    $output[] = $number;
}