Maison > Article > développement back-end > Comment intercepter un tableau à deux dimensions en php
PHP est un langage de script très couramment utilisé dans le développement quotidien, nous pouvons souvent avoir besoin d'intercepter des tableaux bidimensionnels. Il est très pratique d'utiliser PHP pour exploiter des tableaux à deux dimensions. Voici plusieurs façons d'intercepter des tableaux à deux dimensions.
1. Utilisez la fonction array_slice()
La fonction array_slice() est une fonction fournie avec PHP et peut être utilisée pour intercepter une partie du tableau. En utilisant cette fonction, vous pouvez facilement intercepter un tableau bidimensionnel. Lors de son utilisation, il vous suffit de spécifier la position de départ et la longueur de l'interception.
L'utilisation est la suivante :
array array_slice ( array $array , int $offset , int $length = null , bool $preserve_keys = false )
Parmi eux, $array est le tableau à intercepter, $offset est la position de départ de l'interception, $length est la longueur de l'interception, $preserve_keys indique s'il faut conserver le nom de clé d'origine, et la valeur par défaut est false.
Il est à noter que cette fonction renverra un nouveau tableau et n'affectera pas la valeur du tableau d'origine. Voici un exemple :
$arr = array( array('name'=>'张三','age'=>20), array('name'=>'李四','age'=>22), array('name'=>'王五','age'=>24), array('name'=>'赵六','age'=>26), array('name'=>'孙七','age'=>28) ); $new_arr = array_slice($arr, 1,2); print_r($new_arr);
Le résultat de sortie est :
Array ( [0] => Array ( [name] => 李四 [age] => 22 ) [1] => Array ( [name] => 王五 [age] => 24 ) )
Le code ci-dessus intercepte les deux éléments à partir du deuxième élément du tableau d'origine et renvoie un nouveau tableau.
2. Utiliser la boucle for
L'utilisation de "boucle for" peut également intercepter une partie du tableau bidimensionnel et réaliser une interception en contrôlant la position de départ et la position de fin de la boucle. Voici un exemple :
$arr = array( array('name'=>'张三','age'=>20), array('name'=>'李四','age'=>22), array('name'=>'王五','age'=>24), array('name'=>'赵六','age'=>26), array('name'=>'孙七','age'=>28) ); $new_arr = array(); for($i=1;$i<=2;$i++){ array_push($new_arr,$arr[$i]); } print_r($new_arr);
Le résultat est le même que l'exemple précédent :
Array ( [0] => Array ( [name] => 李四 [age] => 22 ) [1] => Array ( [name] => 王五 [age] => 24 ) )
Le code ci-dessus utilise une "boucle for" pour intercepter deux éléments à partir du deuxième élément et renvoyer un nouveau tableau.
3. Utilisez la fonction array_splice()
La fonction array_splice() est également une fonction fournie avec PHP et peut être utilisée pour intercepter une partie du tableau. En utilisant cette fonction, vous pouvez facilement intercepter un tableau bidimensionnel. Lors de son utilisation, il vous suffit de spécifier la position de départ et la longueur de l'interception.
L'utilisation est la suivante :
array array_splice ( array &$input , int $offset [, int $length = 0 [, mixed $replacement = array() ]] )
Parmi eux, $input est le tableau à intercepter, $offset est la position de départ de l'interception, $length est la longueur de l'interception et $replacement représente le contenu de remplacement, qui peut être un tableau ou d'autres types de valeur.
Il est à noter que cette fonction modifiera la valeur du tableau d'origine, c'est-à-dire qu'après interception, le tableau d'origine sera modifié. Voici un exemple :
$arr = array( array('name'=>'张三','age'=>20), array('name'=>'李四','age'=>22), array('name'=>'王五','age'=>24), array('name'=>'赵六','age'=>26), array('name'=>'孙七','age'=>28) ); array_splice($arr, 1,2); print_r($arr);
Le résultat de sortie est :
Array ( [0] => Array ( [name] => 张三 [age] => 20 ) [1] => Array ( [name] => 赵六 [age] => 26 ) [2] => Array ( [name] => 孙七 [age] => 28 ) )
Le code ci-dessus intercepte les deux éléments à partir du deuxième élément du tableau d'origine et modifie le tableau d'origine.
4. Utilisez array_slice() et la boucle foreach
Parfois, nous devons intercepter une certaine colonne dans le tableau bidimensionnel, ce qui peut être réalisé en utilisant la fonction array_slice() et la boucle foreach. Voici un exemple :
$arr = array( array('name'=>'张三','age'=>20), array('name'=>'李四','age'=>22), array('name'=>'王五','age'=>24), array('name'=>'赵六','age'=>26), array('name'=>'孙七','age'=>28) ); $new_arr = array(); foreach($arr as $val){ $new_arr[] = array_slice($val,0,1); } print_r($new_arr);
Le résultat de sortie est :
Array ( [0] => Array ( [name] => 张三 ) [1] => Array ( [name] => 李四 ) [2] => Array ( [name] => 王五 ) [3] => Array ( [name] => 赵六 ) [4] => Array ( [name] => 孙七 ) )
Le code ci-dessus intercepte la première colonne du tableau à deux dimensions et renvoie un nouveau tableau.
Vous trouverez ci-dessus plusieurs méthodes d'interception de tableaux bidimensionnels. J'espère qu'elles pourront vous aider à résoudre des problèmes de développement quotidien.
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!