Avatar ·

Cómo verificar si un array en PHP es asociativo o secuencial (indexado)

¡Hola, colegas! Llevo varios meses escribiendo en PHP y a menudo me encuentro con el problema: necesito entender si un array es una lista normal (con claves numéricas 0, 1, 2...) o asociativo (con claves de cadena, por ejemplo 'name', 'age'). Esto es necesario para procesar datos correctamente, por ejemplo, al convertir a JSON o al pasar a una función que espera un formato específico. Aquí hay un ejemplo. Tengo una función que recibe un array y debe trabajar con él de manera diferente: ```php function processData($data) { // Si el array es secuencial — iteramos los elementos como una lista // Si es asociativo — trabajamos con las claves // ¿Cómo verificarlo dentro de la función? } ``` He intentado verificar con `array_keys()`, pero parece un parche. También leí sobre `is_numeric()`, pero no estoy seguro de que sea confiable. Algunos dicen sobre `array_values()`, otros sobre `range()`. Por favor, indíquenme la forma más correcta y eficiente de verificar si un array es asociativo.