Cet article présente principalement les tableaux et les structures de données en php, qui ont une certaine valeur de référence. Maintenant, je le partage avec tout le monde. Les amis dans le besoin peuvent s'y référer
Les tableaux en php<.>Présentation des tableaux --- php est un langage faiblement typé, donc les tableaux peuvent stocker n'importe quel nombre de données de n'importe quel type et peuvent réaliser les fonctions de structures de données telles que des tas, des piles et des files d'attente. La capacité du tableau peut être automatiquement ajustée en fonction du nombre d'éléments.
Tableau d'index --- L'indice est un entier, similaire aux tableaux dans la plupart des langues.
Tableau associatif --- L'indice est une clé non ordonnée et non répétitive, qui est mappée à la valeur correspondante.
(1) Définition du tableau
1. Déclarez le tableau par affectation directe
Utilisez des nombres entre crochets "[]" après le nom de la variable pour déclarer le tableau d'index et utiliser des chaînes. Déclarez un tableau associatif.
$Nom de la variable tableau [valeur d'index] = contenu des données //La valeur d'index (indice) peut être une chaîne ou un entier
Lors de la déclaration d'une variable tableau, vous pouvez également utiliser un mélange de nombres et de chaînes dans le manière d'indice. Mais cette méthode est rarement utilisée pour les tableaux unidimensionnels
$contact[0]=1
$contact[“id”]=1
$contact[1]="Company A"
$ contact["Company"]="Company A"
Dans le code ci-dessus, un tableau $contact est déclaré, dans lequel un mélange de nombres et de chaînes est utilisé en indice. Ceci est accessible à l’aide de méthodes index ou relationnelles.
Lors de la déclaration d'un tableau d'index, si la valeur d'index augmente, vous n'avez pas besoin de spécifier la valeur d'index entre crochets. Par défaut, elle commence à 0 et augmente dans l'ordre. En PHP, les valeurs d'indice du tableau d'index peuvent être non consécutives, à condition que les valeurs d'indice non consécutives soient spécifiées lors de l'initialisation.
$contact[]=1; //L'indice par défaut est 0
$contact[14]="Gao"; "Société A" ; //Suivez la valeur de l'indice la plus élevée et ajoutez 1, l'indice est 15.
$contact[14]=110; //L'élément avec l'indice 14 est réaffecté
$contact[ ]="php"; ’ ’ à 16 ans 110 [15] => [16] => php )
2. Utilisez la structure du langage array() pour déclarer un tableau
Vous pouvez utiliser la structure du langage array() pour créer un nouveau tableau. Il accepte n’importe quel nombre de paires clé => valeur séparées par des virgules.
$array variable name=array(key1=>value1,key2=>value2,...,keyN=>valueN,) // La clé (key) peut être une valeur entière ou une chaîne (value) peut être n'importe quel type de valeur
Si vous n'utilisez pas => pour spécifier l'indice, la valeur par défaut est un tableau d'index, et la valeur d'index commence à 0 et augmente par défaut. Si vous ne souhaitez pas utiliser la valeur d'index par défaut lors de la déclaration d'un tableau à l'aide de la construction du langage array(), vous pouvez utiliser l'opérateur => Le code est le suivant
$contact=array(1,14=>"Gao", Société A,14=>110,php);
print_r($contact); ] = > 1 [14] => 110 [15] => Société A [16] => php )
Remarque : les index de tableau exprimés sous forme de chaînes doivent toujours être mis entre guillemets. Par exemple, utilisez $foo['bar'] au lieu de $foo[bar]. Mais cela ne signifie pas que vous mettez toujours des guillemets autour des noms clés. Il n'est pas nécessaire de citer les noms clés des constantes ou des variables, sinon PHP ne pourra pas les analyser.
(2) Parcourez le tableau
1. Utilisez l'instruction for pour parcourir le tableau L'utilisation de l'instruction for pour parcourir le tableau nécessite que l'indice du tableau soit un index numérique continu, et en PHP Non seulement vous pouvez spécifier des valeurs d'index numérique non consécutives, mais il existe également des tableaux associatifs avec des chaînes comme indices, de sorte que l'instruction for est rarement utilisée en PHP pour parcourir les tableaux.
2. Utilisez l'instruction foreach pour parcourir le tableau
La structure syntaxique foreach fournit un moyen simple de parcourir le tableau. foreach ne peut être appliqué qu'aux tableaux et aux objets (il prend en charge le déplacement d'objets depuis PHP 5). Si vous essayez de l'appliquer à des variables d'autres types de données ou à des variables non initialisées, cela provoquera une erreur. Il existe deux syntaxes :
foreach (array_expression as $value){ 第一种 }
foreach (array_expression as $key => $value){ 第二种 }
3. Utilisez list(), each() et la boucle while en combinaison pour parcourir le tableau.
each()--Renvoie la paire clé/valeur de la position actuelle du pointeur dans le tableau et déplacez le pointeur du tableau. avant. Une fois each() exécuté, le pointeur du tableau restera sur l'élément suivant du tableau ou sur le dernier élément lorsque la fin du tableau est atteinte. Si vous souhaitez utiliser chacun pour parcourir à nouveau le tableau, vous devez utiliser reset().
List()--Attribuez les valeurs du tableau à certaines variables. Comme array(), ce n’est pas une vraie fonction, mais une construction de langage. list() attribue des valeurs à un ensemble de variables en une seule étape. list() ne peut être utilisé qu'avec des tableaux indexés numériquement et suppose que l'indexation numérique commence à 0.
Explication supplémentaire :
Each() lit un élément à chaque fois, l'assemble dans un tableau et le renvoie s'il n'y a aucun élément, il renvoie false. Les noms de clés du tableau renvoyés sont 0,1,key,value, où 0 est égal à la clé et 1 est égal à la valeur.
list(), avec une syntaxe étrange, n'est utilisé que pour indexer numériquement des tableaux et suppose que l'index commence à 0. list(,,var)=array;
while(list(key,value) = each($array)){}
4. Utilisez la fonction de contrôle du pointeur interne du tableau pour parcourir le tableau
Pour le contrôle du pointeur du tableau, PHP fournit plusieurs fonctions intégrées :
-->current() - Récupère le données de contenu de la position actuelle du pointeur
-->key() - Obtenez la valeur d'index de la position actuelle du pointeur
-->prev() - Rembobinez le pointeur interne du tableau d'un chiffre
-->next() - Retour Déplacer le pointeur interne du tableau vers l'avant d'une position
-->end() - Pointer le pointeur interne du tableau vers le dernier élément
-->reset( ) - Pointez le pointeur interne du tableau vers la première unité
(3) Tableau prédéfini
À partir de php4.1.0, php fournit un ensemble de tableaux prédéfinis supplémentaires ces tableaux. Les variables incluent les variables du serveur Web et du client, de l'environnement d'exploitation et des données d'entrée de l'utilisateur. Elles prennent automatiquement effet dans la portée globale, c'est pourquoi elles sont souvent appelées variables globales automatiques ou variables superglobales. En PHP, les utilisateurs ne peuvent pas personnaliser les variables super globales, donc lors de la personnalisation des variables, vous devez éviter d'avoir le même nom qu'une variable globale prédéterminée. Les tableaux globaux couramment utilisés sont les suivants
-->$GLOBALS — Fait référence à toutes les variables disponibles dans la portée globale
-->$_SERVER — Informations sur le serveur et l'environnement d'exécution
-->$_ENV — Environnement Variable
-->$_GET — Variable HTTP GET
-->$_POST — Variable HTTP POST
-->$_REQUEST — Variable de requête HTTP, composée de GET, POST. COOKEELes variables soumises au script ne sont pas dignes de confiance
-->$_FILES — Variables de téléchargement de fichiers HTTP
-->$_SESSION — Variables de session
-->$_COOKIE — Cookies HTTP, via hスtpcoスススVariables soumises au script
(4) Fonctions de traitement liées au tableau
1. Fonction d'opération clé-valeur du tableau
-->array_values() : Retour. Toutes les valeurs du tableau
-->array_keys() : renvoie tous les noms de clés du tableau
-->in_array() : vérifie si une certaine valeur existe dans le tableau, c'est-à-dire recherche pour une valeur donnée dans la valeur du tableau. Array_search() peut également être utilisé.
-->array_key_exits() : Vérifiez si le nom de clé ou l'index donné existe dans le tableau
-->array_flip() : Échangez les clés et les valeurs dans le tableau et renvoyez le tableau échangé. Si une valeur existe plusieurs fois, le dernier nom de clé sera utilisé comme valeur pour écraser la valeur précédente
-->array_reverse() : inversez l'ordre des éléments dans le tableau, créez un nouveau tableau et renvoyez-le. Autrement dit, disposez les éléments du tableau dans l’ordre inverse.
2. Comptez le nombre et l'unicité des éléments du tableau
-->count() : Calculez le nombre d'éléments dans le tableau ou le nombre d'attributs dans l'objet
--> array_count_values( ) : Compte le nombre d'occurrences de toutes les valeurs du tableau
-->array_unique() : Supprime les valeurs en double dans le tableau et renvoie un nouveau tableau
3. Fonctions qui utilisent des fonctions de rappel pour traiter les tableaux
-->array_filter() : utilisez la fonction de rappel pour filtrer les éléments du tableau et renvoyer un nouveau tableau filtré par la fonction définie par l'utilisateur
-->array_walk( ) : Applique la fonction de rappel à chaque élément du tableau, renvoie TRUE en cas de succès, sinon renvoie FALSE
-->array_map() : Applique la fonction de rappel aux éléments du tableau donné (peut gérer plusieurs tableaux), et renvoie le tableau une fois la fonction définie par l'utilisateur appliquée
- ->array_filter() : utilisez la fonction de rappel pour filtrer les éléments du tableau et renvoie un nouveau tableau filtré par la fonction définie par l'utilisateur
-->array_filter() : utilisez la fonction de rappel pour filtrer les éléments du tableau et renvoyez le nouveau tableau filtré par la fonction définie par l'utilisateur Nouveau tableau après le filtrage de fonction personnalisé
Fonction de tri de tableau
4. 🎜>
5. Diviser, fusionner, décomposer et combiner des tableaux
-->array_slice() : Supprimez une valeur dans le tableau en fonction des conditions et retournez
-->array_splice( ) : Sélectionnez une valeur dans le tableau en fonction des conditions, supprimez-la ou remplacez-la par d'autres valeurs
-->array_combine() : Créez un tableau, en utilisant la valeur d'un tableau comme nom de clé et la valeur d'un autre tableau comme valeur
-->array_merge() : Fusionner un ou plusieurs tableaux
-->array_intersect() : Calculer le tableau L'intersection de
-->array_diff() : Calculer la différence des tableaux
-->array_slice() : Supprimer une valeur du tableau en fonction des conditions et renvoyer
6. Autres fonctions couramment utilisées
-->array_rand() : Supprimez aléatoirement un ou plusieurs éléments du tableau
-->shuffle() : Mélangez l'ordre des éléments dans le tableau
-->array_sum() : Calcule la somme de toutes les valeurs d'un tableau -->range() : Créer un tableau contenant des cellules dans la plage spécifiée
(5) Tableaux et structures de données
Dans les langages de programmation fortement typés, il existe des structures de données dédiées solution. Habituellement, un conteneur est créé dans lequel tout type de données peut être stocké. La capacité du conteneur peut être déterminée en fonction des données stockées dans le conteneur, et la structure du conteneur peut être de longueur variable, comme des listes chaînées, des piles. , les files d'attente, etc., qui sont toutes des structures de données couramment utilisées. En PHP, les tableaux sont généralement utilisés pour effectuer un travail qui peut être effectué en utilisant des structures de données dans d'autres langages. Il s'agit d'un langage de types qui peut stocker plusieurs types de données dans le même tableau, et il n'y a pas de limite de longueur pour les tableaux en PHP. La capacité du tableau à stocker des données peut également être automatiquement ajustée en fonction de l'augmentation ou de la diminution du nombre. d'éléments à l'intérieur.
1. Utilisez des tableaux pour implémenter des piles
La pile est une forme d'implémentation de structure de données. La structure de données adopte la structure de données « premier entré, dernier sorti ». En php, traitez le tableau comme une pile et utilisez les deux fonctions array_push() et array_pop() pour terminer les opérations push et pop des données.
-->array_push() : pousse une ou plusieurs unités jusqu'à la fin du tableau (poussez sur la pile), puis renvoie la longueur du nouveau groupe.
-->array_pop() : insérez la dernière unité du tableau dans le tableau (sortez de la pile)
2. Utilisez des tableaux pour implémenter des files d'attente
La file d'attente est une forme d'implémentation de structure de données, et " Structure de données « Premier entré, premier sorti ». En PHP, vous pouvez utiliser les fonctions array_push() et array_shift() pour terminer l'opération de file d'attente de données en traitant le tableau comme une pile.
array_shift()
Suivez le site Web PHP en chinois !
Comment attribuer des valeurs dans un tableau à un ensemble de variables en PHP
PHP commentaires de fond Mise en œuvre de
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!