Maison >développement back-end >tutoriel php >Tableau de fonctions de tri de tableau bidimensionnel personnalisé PHP

Tableau de fonctions de tri de tableau bidimensionnel personnalisé PHP

php中世界最好的语言
php中世界最好的语言original
2018-03-24 13:52:562108parcourir

Cette fois, je vous présente un tableau de fonctions de tri de tableau bidimensionnel personnalisé PHP, quelles sont les précautions à prendre pour le tableau de fonctions de tri de tableau bidimensionnel personnalisé PHP, ce qui suit est un cas pratique, jetons un coup d'oeil .

Cet article présente principalement l'utilisation de la fonction tri de tableau bidimensionnelle personnalisée de PHP array_orderby, et analyse le parcours, la détermination, le tri et d'autres opérations associées de PHP pour trier les tableaux bidimensionnels dans le sous forme d'exemples. Pour obtenir des conseils, les amis dans le besoin peuvent se référer à

Cet article décrit l'utilisation de la fonction de tri de tableaux bidimensionnels personnalisée de PHP, array_orderby. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

<?php
/**
I came up with an easy way to sort database-style results. This does what example 3 does, except it takes care of creating those intermediate arrays for you before passing control on to array_multisort(). 
*/
function array_orderby()
{
  $args = func_get_args();
  $data = array_shift($args);
  foreach ($args as $n => $field) {
    if (is_string($field)) {
      $tmp = array();
      foreach ($data as $key => $row)
        $tmp[$key] = $row[$field];
      $args[$n] = $tmp;
      }
  }
  $args[] = &$data;
  call_user_func_array('array_multisort', $args);
  return array_pop($args);
}
/*
The sorted array is now in the return value of the function instead of being passed by reference.
*/
$data[] = array('volume' => 67, 'edition' => 2);
$data[] = array('volume' => 86, 'edition' => 1);
$data[] = array('volume' => 85, 'edition' => 6);
$data[] = array('volume' => 98, 'edition' => 2);
$data[] = array('volume' => 86, 'edition' => 6);
$data[] = array('volume' => 67, 'edition' => 7);
// Pass the array, followed by the column names and sort flags
$sorted = array_orderby($data, 'volume', SORT_DESC, 'edition', SORT_ASC);
print_r($sorted)
?>

Résultats en cours d'exécution :

Array
(
  [0] => Array
    (
      [volume] => 98
      [edition] => 2
    )
  [1] => Array
    (
      [volume] => 86
      [edition] => 1
    )
  [2] => Array
    (
      [volume] => 86
      [edition] => 6
    )
  [3] => Array
    (
      [volume] => 85
      [edition] => 6
    )
  [4] => Array
    (
      [volume] => 67
      [edition] => 2
    )
  [5] => Array
    (
      [volume] => 67
      [edition] => 7
    )
)

Je vous crois J'ai lu le cas dans cet article. Après avoir maîtrisé la méthode, veuillez prêter attention aux autres articles connexes sur le site Web php chinois pour un contenu plus passionnant !

Lecture recommandée :

Comment utiliser le générateur PHP

Accéder aux autorisations du service d'annuaire de phpstudy2018

Implémentation ThinkPHP du processus de paiement WeChat (paiement jsapi) tutoriel explication détaillée_php exemple

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn