Rodrigo Borrego Bernabé - Software Developer




No puede ser tan costoso sacar una lista de idiomas

Category : Programación · by Ene 27th, 2011

Os voy a soltar el código así sin anestesia ni nada.

implode (', ', array_intersect_key($_languages_, array_combine ( $object->getLanguagesArray(), $object->getLanguagesArray())));

Y ahora os explico qué hace. Básicamente tenemos un array no asociativo obtenido con $object->getLanguagesArray() que contiene una lista de claves de lenguajes (es, fr, en, por ejemplo). Y por otro lado tenemos un array asociativo con los nombres de todos los lenguajes como valor y sus códigos como clave. Algo como esto:

Array (
  [0] => en
  [1] => pt
  [2] => fr
  [3] => es
)
Array (
  [aa] => Afar
  [ab] => Abjasio
  [af] => Afrikaans
  [am] => Amárico
...)

Y todo lo que quiero es una cadena, separada por comas con los nombres de los idiomas de $object.

Bueno, pues me ha costado casi una hora buceando en las funciones de array de PHP. Espero que a alguien por ahí le ahorre tiempo.

SHARE :

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.