SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

288 Plugins, 197 contribs sur SPIP-Zone, 258 visiteurs en ce moment

Accueil > Outils pour plugins > SPIP Bonux > Array_column pour SPIP

Array_column pour SPIP

21 avril 2015 – par Phenix – commentaire

3 votes

Attention :

Cette fonctionnalité a été ajoutée à spip_bonux (version 3.2.0).

Charge la fonction array_column de PHP 5.5 pour les versions inférieures.

PHP 5.5 introduit une nouvelle fonction fort utile : array_column, pour récupérer par sa clé une sous-colonne d’un tableau associatif en php.
Malheureusement, ce n’est pas la version de PHP la plus répandue à l’heure actuelle. Ce plugin résout le problème de la compatibilité en ajoutant cette fonction à SPIP si le serveur n’est pas en PHP 5.5.

Il est basé sur le travail de Ben Ramsey.

Utilisation dans SPIP

Array_column s’avère très pratique pour simplifier des tableaux. Par exemple, un retour de la fonction sql_allfetsel.

Imaginons le code suivant :

  1. $mail = sql_allfetsel('email', 'spip_auteurs', sql_in('id_auteur', $destinataire));

$mail contiendra alors un tableau formaté comme suis :

  1. $mail = array(
  2. array('email' => 'email@email.com'),
  3. array('email' => 'email2@email2.com'),
  4. array('email' => 'email3@email3.com'),
  5. [...]
  6. );

Télécharger

Alors que l’on voudrait simplement gérer un gros tableau de mail, il suffit de passer dans array_column :

  1. $mail = array_column($mail, 'email');

Et notre beau tableau devient :

  1. $mail = array(
  2. 'email@email.com',
  3. 'email2@email2.com',
  4. 'email3@email3.com',
  5. [...]
  6. );

Télécharger

Une autre utilisation bien utile, récupérer un tableau id_objet => Titre_objet :

  1. $liste_articles = sql_allfetsel('id_article, titre', 'spip_articles');
  2. $liste_articles = array_column($liste_articles, 'titre', 'id_article');

Télécharger

Dans ce cas si, le troisième paramètre sera utilisé comme index et donnera le tableau suivant :

  1. $liste_articles = array(
  2. 1 => 'titre article 1',
  3. 2 => 'titre article 2',
  4. 3 => 'titre articles 3',
  5. [...]
  6. );

Télécharger

Dernière modification de cette page le 1er juin 2015

Retour en haut de la page

Vos commentaires

Répondre à cet article

Qui êtes-vous ?
  • [Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Balises #SWITCH et #CASE

    20 mai 2016 – commentaires

    Ce plugin introduit dans SPIP les balises #SWITCH, #CASE et #CASE_DEFAULT qui reproduisent le fonctionnement des switch... case... default... du php et du C. Utilisation Les balises #SWITCH, #CASE et #CASE_DEFAULT permettent de comparer un (...)

  • Saisies

    27 mars 2010 – 481 commentaires

    Introduction Créer un formulaire est une tâche toujours un peu répétitive : les champs ont souvent les mêmes propriétés, le même accompagnement (message d’erreur, explication, ...) et la même structure HTML. Ce plugin est un outil pour les développeurs (...)

  • CookieChoices

    26 septembre 2014 – 18 commentaires

    Affiche un avertissement à l’usage des cookies en utilisant le script cookiechoices fourni par google Introduction Par défaut, SPIP est respectueux de la vie privée de ses visiteurs et ne pose pas de cookies de traçages ou publicitaires. Ce (...)

  • Écrire la documentation d’un plugin SPIP

    25 février 2014 – commentaires

    Cet article explique en 4 étapes comment créer les liens de la documentation d’un plugin sur Contrib. Il s’adresse aussi aux administrateurs et administratrices de SPIP-contrib qui auraient des trous de mémoire ;) Prérequis : vous disposez d’un (...)

  • Slick

    17 mai – 11 commentaires

    Intégration à SPIP du carrousel Slick : https://kenwheeler.github.io/slick/ Fonctions de Slick Son utilisation permet d’afficher une liste d’éléments défilants, en l’occurrence ici une série de photographies. Par les configurations proposées, il est (...)

Ça spipe par là