Este es un tema bastante antiguo, pero ya hice referencia a ella antes de llegar a mi propia solución para obtener un resultado más específico, entonces, por lo tanto, compartiré con ustedes esa solución.
El resultado deseado fue anular todos los valores, manteniendo las teclas, y buscar recursivamente la matriz para sub-arrays también.
recursiva SET MULTI-nivel de matriz VALORES a NULL:
function nullifyArray(&$arrayData) {
if (is_array($arrayData)) {
foreach ($arrayData as $aKey => &$aValue) {
if (is_array($aValue)) {
nullifyArray($aValue);
} else {
$aValue = null;
}
}
return true; // $arrayData IS an array, and has been processed.
} else {
return false; // $arrayData is NOT an array, no action(s) were performed.
}
}
Y aquí es en su uso, junto con ANTES y DESPUÉS salida del contenido de la matriz.
código PHP para crear un multinivel-array, y llama a la función nullifyArray():
// Create a multi-level array.
$testArray = array(
'rootKey1' => 'rootValue1',
'rootKey2' => 'rootValue2',
'rootArray1' => array(
'subKey1' => 'subValue1',
'subArray1' => array(
'subSubKey1' => 'subSubValue1',
'subSubKey2' => 'subSubValue2'
)
)
);
// Nullify the values.
nullifyArray($testArray);
ANTES DE LLAMADA A nullifyArray():
Array
(
[rootKey1] => rootValue1
[rootKey2] => rootValue2
[rootArray1] => Array
(
[subKey1] => subValue1
[subArray1] => Array
(
[subSubKey1] => subSubValue1
[subSubKey2] => subSubValue2
)
)
)
DESPUÉS DE LLAMADA A nullifyArray():
Array
(
[rootKey1] =>
[rootKey2] =>
[rootArray1] => Array
(
[subKey1] =>
[subArray1] => Array
(
[subSubKey1] =>
[subSubKey2] =>
)
)
)
Espero que ayude a alguien/a cualquier persona, y gracias a todos los que respondieron la pregunta anteriormente.
'array_map (function() {return '';}, $ array)' – caw
** ** Ver también: preguntas y respuestas para pitón http: // equivalente stackoverflow. com/questions/22991888 – dreftymac