2012-05-09 23 views
16

que tiene una matriz que se construye usando la función explode(), pero al ver cómo lo estoy usando con datos aleatorios/dinámicas, veo que los índices van cambiando:volver a indexar claves de matriz numérica

Array 
(
    [2] => Title: Warmly little before cousin sussex entire set Blessing it ladyship. 
    [3] => Snippet: Testing 
    [4] => Category: Member 
    [5] => Tags: little, before, entire 
) 

Necesito ordenar la matriz comenzando en 0 siempre. Estoy probando con datos diferentes y algunas veces comienza en 0, y con otras pruebas comienza en diferentes números. Investigué y me encontré con Array starting at zero, pero parece que solo se aplicó al caso específico de ese usuario. El código que estoy usando para construir la matriz se puede ver aquí: https://stackoverflow.com/a/10484967/1183323

¿Cómo puedo hacer esto?

+5

¿Cómo construir esta matriz? Explotar de forma predeterminada comenzaría en 0. – Jage

+1

¿Leyó [lea el manual] (http://www.php.net/manual/en/function.array-values.php)? – symcbean

Respuesta

45
$your_new_array = array_values($your_old_array); 
+0

Esto lo hizo, pero si hubiera algo más, debería preocuparme la implementación de esta función. – Tower

+0

No. Según el manual, "array_values ​​() devuelve todos los valores de la matriz de entrada e indexa numéricamente la matriz". –

+3

Tenga en cuenta que el manual no garantiza que se preserve el orden de los valores. – matt

11

Uso array_merge() a renumerar la matriz:

$your_old_array = array(2 => 'whatever', 19 => 'huh', 22 => 'yep'); 
$your_new_array = array_merge($your_old_array); 
print_r($your_new_array); 

imprime esta:

Array ( 
    [0] => whatever 
    [1] => huh 
    [2] => yep) 
+0

Esto también funciona, el resultado que obtuve es similar al de 'array_values', ¡gracias! – Tower

+0

Esto se llama JUGAD en hindi y en idioma urdu: D: P pero está funcionando .. (y) –

+1

Esto es similar a array_values ​​pero es mejor si también tiene claves de cadena en la matriz junto con teclas numéricas. array_merge() mantiene las claves de cadena como están y reorganiza solo las teclas numéricas. –

Cuestiones relacionadas