一些php数组排序函数示例总结_PHP教程
在php中数组排序有很多函数可以实现的,如果是简单的一维数组排序我们可以使用php 自带的排序函数了,但多维数组时我们需要自己写了。
回来后一直在揪心啊,于是翻了一下书本查阅,给我知道了答案。为了记住它们,我决定来一个数组排序函数大总结。
首先接触的就是PHP数组排序、降序的排序问题。
sort:本函数为 array 中的单元赋予新的键名。这将删除原有的键名而不仅是重新排序。
rsort:本函数对数组进行逆向排序(最高到最低)。 删除原有的键名而不仅是重新排序。
asort:对数组进行排序并保持索引关系
arsort:对数组进行逆向排序并保持索引关系
ksort:对数组按照键名排序,保留键名到数据的关联
krsort:对数组按照键名逆向排序,保留键名到数据的关联
natsort:对字母数字字符串进行排序并保持原有键/值的关联
natcasesort:同natsort排序算法,但不区分大小写字母排序
PHP 数组排序(sort)
数字索引数组排序:
函数:sort(array, [sort type])
说明:sort()函数按升序对指定数组(第一个参数)进行排序。
sort函数第二参数作用为指定排序类型,是可选参数,可能的值为:
SORT_REGULAR: 默认值,不改变类型进行排序;
SORT_NUMERIC: 把值作为数字进行排序;
SORT_STRING: 把值作为字符串进行排序;
如数组中有4和”37″,按数字排序,4小于”37″;按字符串排序,4大于”37″;
一、一维数组
假设有一个一维数组,如下:
$sortArr = array("name"=>"hiro", "age"=>"23", "city"=>"Shanghai", "code"=>"200051");
print_r()输出的原始数组结果为:
Array ( [name] => hiro [age] => 23 [city] => Shanghai [code] => 200051 )
1.sort()函数:根据数组下标进行升序排列;
print_r()输出的数组结果为(输出时只有数组下标,而不是键名):
1
Array ( [0] => 23 [1] => 200051 [2] => Shanghai [3] => hiro )
2.rsort()函数:与sort()函数相反,根据数组下标进行降序排列;
print_r()输出的数组结果为(输出时只有数组下标,而不是键名):
Array ( [0] => hiro [1] => Shanghai [2] => 200051 [3] => 23 )
3.asort()函数:根据数组的键名进行升序排列;
print_r()输出的数组结果为:
1
Array ( [age] => 23 [code] => 200051 [city] => Shanghai [name] => hiro )
4.arsort()函数:与asort()函数相反,根据数组的键名进行降序排列;
print_r()输出的数组结果为:
Array ( [name] => hiro [city] => Shanghai [code] => 200051 [age] => 23 )
5.ksort()函数:根据数组的键值进行升序排列;
print_r()输出的数组结果为:
Array ( [age] => 23 [city] => Shanghai [code] => 200051 [name] => hiro )
6.krsort()函数:与ksort()函数相反,根据数组的键值进行降序排列;
print_r()输出的数组结果为:
代码如下 | 复制代码 |
|
7.reverse_array()函数:反向当前的数组排列顺序;
print_r()输出的数组结果为:
代码如下 | 复制代码 |
Array ( [name] => hiro [age] => 23 [city] => Shanghai [code] => 200051 ) |
8.shuffle()函数:随机地排列数组顺序(每次刷新后排列的顺序都不相同);
print_r()输出的数组结果为(只是其中一种随机排列):
Array ( [0] => 23 [1] => 200051 [2] => Shanghai [3] => hiro )
二、二维数组
假设有一个二维数组,如下:
代码如下 | 复制代码 |
$person = array( 1 |
二维数组的排序是根据每维的键名排序的,所以需要额外地编写比较函数。先举三个例子:
1.按每维的第一个元素升序排列,代码如下:
代码如下 | 复制代码 |
function compare0($x, $y) { 1 |
2.按每维的第三个元素升序排列,代码如下:
代码如下 | 复制代码 |
function compare2($x, $y) {
|
3.按每维的第三个元素升序排列,代码如下:
代码如下 | 复制代码 |
function reverse_compare2($x, $y) { if($x[2] == $t[2]) { return 0; } elseif ($x[2] return 1; //改变后即可反向 } else { return -1; //改变后即可反向 } } usort($person, reverse_compare2); |
echo "按第三个元素反向排序:";
print_r($person);
输出的结果如下:
1
按第三个元素反向排序:
代码如下 | 复制代码 |
Array ( [0] => Array ( [0] => janstar [1] => 28 [2] => xinjiang ) [1] => Array ( [0] => hiro [1] => 23 [2] => suzhou ) [2] => Array ( [0] => yoyo [1] => 25 [2] => shanghai ) ) |
呵呵,是不是代码多了点,记下了以后方便查阅啊!
例
代码如下 | 复制代码 |
error_reporting(0); /** $array = array(100, 1000, 1, 10000); |

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

Si vous êtes un développeur PHP expérimenté, vous aurez peut-être le sentiment d'y être déjà allé et de l'avoir déjà fait. Vous avez développé un nombre important d'applications, débogué des millions de lignes de code et peaufiné de nombreux scripts pour réaliser des opérations.

Ce tutoriel montre comment traiter efficacement les documents XML à l'aide de PHP. XML (Language de balisage extensible) est un langage de balisage basé sur le texte polyvalent conçu à la fois pour la lisibilité humaine et l'analyse de la machine. Il est couramment utilisé pour le stockage de données et

JWT est une norme ouverte basée sur JSON, utilisée pour transmettre en toute sécurité des informations entre les parties, principalement pour l'authentification de l'identité et l'échange d'informations. 1. JWT se compose de trois parties: en-tête, charge utile et signature. 2. Le principe de travail de JWT comprend trois étapes: la génération de JWT, la vérification de la charge utile JWT et l'analyse. 3. Lorsque vous utilisez JWT pour l'authentification en PHP, JWT peut être généré et vérifié, et les informations sur le rôle et l'autorisation des utilisateurs peuvent être incluses dans l'utilisation avancée. 4. Les erreurs courantes incluent une défaillance de vérification de signature, l'expiration des jetons et la charge utile surdimensionnée. Les compétences de débogage incluent l'utilisation des outils de débogage et de l'exploitation forestière. 5. L'optimisation des performances et les meilleures pratiques incluent l'utilisation des algorithmes de signature appropriés, la définition des périodes de validité raisonnablement,

Une chaîne est une séquence de caractères, y compris des lettres, des nombres et des symboles. Ce tutoriel apprendra à calculer le nombre de voyelles dans une chaîne donnée en PHP en utilisant différentes méthodes. Les voyelles en anglais sont a, e, i, o, u, et elles peuvent être en majuscules ou en minuscules. Qu'est-ce qu'une voyelle? Les voyelles sont des caractères alphabétiques qui représentent une prononciation spécifique. Il y a cinq voyelles en anglais, y compris les majuscules et les minuscules: a, e, i, o, u Exemple 1 Entrée: String = "TutorialSpoint" Sortie: 6 expliquer Les voyelles dans la chaîne "TutorialSpoint" sont u, o, i, a, o, i. Il y a 6 yuans au total

Liaison statique (statique: :) implémente la liaison statique tardive (LSB) dans PHP, permettant à des classes d'appel d'être référencées dans des contextes statiques plutôt que de définir des classes. 1) Le processus d'analyse est effectué au moment de l'exécution, 2) Recherchez la classe d'appel dans la relation de succession, 3) il peut apporter des frais généraux de performance.

Quelles sont les méthodes magiques de PHP? Les méthodes magiques de PHP incluent: 1. \ _ \ _ Construct, utilisé pour initialiser les objets; 2. \ _ \ _ Destruct, utilisé pour nettoyer les ressources; 3. \ _ \ _ Appel, gérer les appels de méthode inexistants; 4. \ _ \ _ GET, Implémentez l'accès à l'attribut dynamique; 5. \ _ \ _ SET, Implémentez les paramètres d'attribut dynamique. Ces méthodes sont automatiquement appelées dans certaines situations, améliorant la flexibilité et l'efficacité du code.
