重复元素我有2个数组:1,其保存包含在名称中包含一些数据作为ID和2的文件名:卸下从bidemensional阵列PHP
Array
(
[0] => Array
(
[file] => 103135_cara.jpg
)
[1] => Array
(
[file] => 103135_corpo.jpg
)
[2] => Array
(
[file] => 103136_cara.jpg
)
[3] => Array
(
[file] => 103136_corpo.jpg
)
Array2
(
[0] => Array
(
[id] => 103137
[nome] => Eduardo Vieira
[sexo] => 1
[datanascimento] => 1983-11-15
[morada] => R: Gothard Kaesemodel 750 ? Torre 1 - Ap 508
[localidade] => Joinville
[cp1] =>
[cp2] =>
[tlm] => 479946464
[email] => [email protected]
[estadocivil] => 1
[profissao] => 7
)
[1] => Array
(
[id] => 103138
[nome] => João Nuno Gonçalves
[sexo] => 1
[datanascimento] => 1984-08-13
[morada] => Rua Elias Garcia Nº325 6D
[localidade] => Amadora
[cp1] => 2700
[cp2] => 323
[tlm] => 964359799
[email] => [email protected]
[estadocivil] => 1
[profissao] => 7
)
我已合并数组为:
Array3
(
[0] => Array
(
[id] => 103137
[nome] => Eduardo Vieira
[sexo] => 1
[datanascimento] => 1983-11-15
[morada] => R: Gothard Kaesemodel 750 ? Torre 1 - Ap 508
[localidade] => Joinville
[cp1] =>
[cp2] =>
[tlm] => 479946464
[email] => [email protected]
[estadocivil] => 1
[profissao] => 7
[file1] => 103137_cara.jpg
)
[1] => Array
(
[id] => 103137
[nome] => Eduardo Vieira
[sexo] => 1
[datanascimento] => 1983-11-15
[morada] => R: Gothard Kaesemodel 750 ? Torre 1 - Ap 508
[localidade] => Joinville
[cp1] =>
[cp2] =>
[tlm] => 479946464
[email] => [email protected]
[estadocivil] => 1
[profissao] => 7
[file1] => 103137_cara.jpg
[file2] => 103137_corpo.jpg
)
[2] => Array
(
[id] => 103138
[nome] => João Nuno Gonçalves
[sexo] => 1
[datanascimento] => 1984-08-13
[morada] => Rua Elias Garcia Nº325 6D
[localidade] => Amadora
[cp1] => 2700
[cp2] => 323
[tlm] => 964359799
[email] => [email protected]
[estadocivil] => 1
[profissao] => 7
[file1] => 103138_cara.jpg
)
[3] => Array
(
[id] => 103138
[nome] => João Nuno Gonçalves
[sexo] => 1
[datanascimento] => 1984-08-13
[morada] => Rua Elias Garcia Nº325 6D
[localidade] => Amadora
[cp1] => 2700
[cp2] => 323
[tlm] => 964359799
[email] => [email protected]
[estadocivil] => 1
[profissao] => 7
[file1] => 103138_cara.jpg
[file2] => 103138_corpo.jpg
)
我的问题是:我怎么能删除仅包含键“文件1”中保持有两个键“文件1”和“文件2”
这里的那些数组元素是我使用的代码对我来说RGE数组:
foreach ($ids as $val1) {
foreach ($files as $key => $val2) {
$cara = strpos($val2['file'], $val1['id'].'_cara');
if ($cara !== false) {
$val1['file1'] = $val2['file'];
$data[] = $val1;
unset($files[$key]);
}
$corpo = strpos($val2['file'], $val1['id'].'_corpo');
if ($corpo !== false) {
$val1['file2'] = $val2['file'];
$data[] = $val1;
unset($files[$key]);
}
}
}
你是如何合并的阵列?我真的没有看到重复条目出现在哪里或数据如何相关。我的意思是你*可以*只是'foreach($ array为$ key => $ item){if(!isset($ item ['file1'],$ item ['file2'])){unset($ array [$ key]); }} - 但我认为一个更好的解决方案是阻止首先出现的诱惑。 – DaveRandom 2012-08-06 21:20:27
对于array2中的每个条目(其中包含作为array1中文件名称一部分的ID),array1中可以有1或2个条目。每个array1元素几乎总是有2个文件。 – mjpramos 2012-08-07 12:03:17
我试过这个合并。我觉得这里是我的问题: ($ IDS是阵列1和$文件是数组2) – mjpramos 2012-08-07 12:06:31