首页 > 解决方案 > 如何将数字数组与字符串数组匹配

问题描述

我有两个数组,$A 是 product_id 数组,$B 是图像文件名数组。

例子:

$a = array("654345","665456","566676");

$b = array("filename_654345.jpg", "filename-file_566676.jpg");

我如何遍历数组 $a 中的每个值并从数组 $b 中找到相同的值附加到它。

目标是有一个类似解决方案的表格,其中产品 id 和文件名包含相同的 id。

例子:

  1. 566676 - 文件名-file_566676.jpg

  2. 654345 - 文件名_654345.jpg

ETC...

标签: php

解决方案


使用 foreach 遍历图像名称数组并使用 preg_replace() 获取数字,然后循环遍历 id 的数组以检查数字是否存在

$array_result=[];
foreach($names as $name){
    $x= preg_replace("/[^0-9]/", '', $name);
    if(in_array($x,$ids)){
            array_push($array_result,[$x,$name]);
    }
}

推荐阅读