Digui function program function for recursive regular matching numbers
If the number is saved in the new array, the last array that returns all elements containing the number
$array =array (
"22",
"1234",
Array ("A",
Array ("AaB", "00000", "AAA", "222000", "3333000"),
"AA", "999", "AAAA"),
"D",
"567",
"33",
"DSF");
$FL _array=array ();
function Digui ($arr)
{
Global $FL _array;
foreach ($arr as $key = $value)
{
if (Is_array ($value))
{
Digui ($value);
}
}
$FL _array = Preg_grep ("/\d+/", $arr);
return $FL _array;
}
Print_r (Digui ($array));
?>
Reply to discussion (solution)
$array =array ( "triple", "1234", Array ( "a", array ("AaB", "00000", "AAA", "222000", "3333000"), "AA", "999", "AAAA"), "D", "567", "", "DSF"), function Digui ($arr) { $FL _array = Array (); foreach ($arr as $key = + $value) { if (Is_array ($value)) { $FL _array = Array_merge ($fl _array, Digui ($value)) ; } } $FL _array = Array_merge ($fl _array, @preg_grep ("/\d+/", $arr)); return $FL _array;} Print_r (Digui ($array));
Array
(
[0] = 00000
[1] = 222000
[2] = 3333000
[3] = 999
[4] = 22
[5] = 1234
[6] = 567
[7] = 33
)
$result =array (), global $result, function Getnum ($arr) {global $result; foreach ($arr as $value) {if (Is_array ($value)) { Getnum ($value);} if (Is_numeric ($value)) {Array_push ($result, $value);}} return $result;} Print_r (Getnum ($array));
It seems like you can also