Ich verwende zwei Array mit mehrdimensionalen.PHP: - In mehrdimensionalen Array
Ich möchte den gleichen Wert mit allen entfernen Element entfernen, aber ohne irgendeine Funktion verwenden.
Siehe unten meinen Code für mehrdimensionale Array.
<?php
$a=array("0" => "test_3","1" => "test_4");
$b=array('test'=>array("label"=>"TEST","value"=>array(
"0"=>array("value"=>"test_1","label"=>"[test] Services_1"),
"1"=>array("value"=>"test_2","label"=>"[test] Services_2"),
"2"=>array("value"=>"test_3","label"=>"[test] Services_3"),
"3"=>array("value"=>"test_4","label"=>"[test] Services_4"),
)
),
'test1'=>array("label"=>"TEST","value"=>array(
"0"=>array("value"=>"test_11","label"=>"[test] Services_11"),
"1"=>array("value"=>"test_12","label"=>"[test] Services_12"),
"2"=>array("value"=>"test_13","label"=>"[test] Services_13"),
"3"=>array("value"=>"test_14","label"=>"[test] Services_14"),
)
)
);
echo "<pre>";
print_r($a);
print_r($b);
foreach($a as $val)
{
$search =$val;
$result = array_map(function ($value) use ($search) {
//print_r($value);
if(($key = array_search($search, $value['value'])) !== false) {
unset($value['value'][$key]);
}
}, $b);
print_r($result);
}
echo "</pre>";
?>
OUT PUT: -
Array
(
[0] => test_3
[1] => test_4
)
Array
(
[test] => Array
(
[label] => TEST
[value] => Array
(
[0] => Array
(
[value] => test_1
[label] => [test] Services_1
)
[1] => Array
(
[value] => test_2
[label] => [test] Services_2
)
[2] => Array
(
[value] => test_3
[label] => [test] Services_3
)
[3] => Array
(
[value] => test_4
[label] => [test] Services_4
)
)
)
[test1] => Array
(
[label] => TEST
[value] => Array
(
[0] => Array
(
[value] => test_11
[label] => [test] Services_11
)
[1] => Array
(
[value] => test_12
[label] => [test] Services_12
)
[2] => Array
(
[value] => test_13
[label] => [test] Services_13
)
[3] => Array
(
[value] => test_14
[label] => [test] Services_14
)
)
)
)
Und hier möchte ich nur so.
Array
(
[test] => Array
(
[label] => TEST
[value] => Array
(
[0] => Array
(
[value] => test_1
[label] => [test] Services_1
)
[1] => Array
(
[value] => test_2
[label] => [test] Services_2
)
)
)
[test1] => Array
(
[label] => TEST
[value] => Array
(
[0] => Array
(
[value] => test_11
[label] => [test] Services_11
)
[1] => Array
(
[value] => test_12
[label] => [test] Services_12
)
[2] => Array
(
[value] => test_13
[label] => [test] Services_13
)
[3] => Array
(
[value] => test_14
[label] => [test] Services_14
)
)
)
)
Geben Sie mir bitte einen Vorschlag.
Haben Sie einen Code mit Ihrem Test, um das Problem zu lösen? – rokas
Ja, ich versuche viele Code dafür, aber ich kann nicht das perfekte Ergebnis @rokas bekommen. –
Verwenden Sie einfach eine Foreach (wahrscheinlich zwei) dann verwenden Sie eine wenn in Array, dann Unset – Ghost