Comment intercepter un tableau à deux dimensions en php

王林
Libérer: 2023-05-19 13:14:09
original
999 Les gens l'ont consulté

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 )
Copier après la connexion

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);
Copier après la connexion

Le résultat de sortie est :

Array
(
    [0] => Array
        (
            [name] => 李四
            [age] => 22
        )

    [1] => Array
        (
            [name] => 王五
            [age] => 24
        )

)
Copier après la connexion
Copier après la connexion

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);
Copier après la connexion

Le résultat est le même que l'exemple précédent :

Array
(
    [0] => Array
        (
            [name] => 李四
            [age] => 22
        )

    [1] => Array
        (
            [name] => 王五
            [age] => 24
        )

)
Copier après la connexion
Copier après la connexion

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() ]] )
Copier après la connexion

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);
Copier après la connexion

Le résultat de sortie est :

Array
(
    [0] => Array
        (
            [name] => 张三
            [age] => 20
        )

    [1] => Array
        (
            [name] => 赵六
            [age] => 26
        )

    [2] => Array
        (
            [name] => 孙七
            [age] => 28
        )

)
Copier après la connexion

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);
Copier après la connexion

Le résultat de sortie est :

Array
(
    [0] => Array
        (
            [name] => 张三
        )

    [1] => Array
        (
            [name] => 李四
        )

    [2] => Array
        (
            [name] => 王五
        )

    [3] => Array
        (
            [name] => 赵六
        )

    [4] => Array
        (
            [name] => 孙七
        )

)
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal