Maison  >  Article  >  développement back-end  >  Comment convertir une chaîne numérique en tableau en php

Comment convertir une chaîne numérique en tableau en php

PHPz
PHPzoriginal
2023-04-26 16:58:41845parcourir

En programmation PHP, convertir une chaîne numérique en tableau est un besoin très courant, comme lire une colonne de nombres dans un fichier csv, la stocker sous forme de tableau pour des opérations ultérieures ou lire une colonne d'une base de données. doivent également être convertis en tableaux pour le traitement. Cet article présente plusieurs méthodes pour convertir des chaînes numériques en tableaux.

Méthode 1 : Utilisez la fonction str_split

La fonction str_split peut diviser la chaîne en un tableau, par exemple :

$str = "123456";
$arr = str_split($str);
print_r($arr);

Sortie : #🎜 🎜 #

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
    [5] => 6
)
Cette méthode est très simple, mais il convient de noter que si la chaîne numérique contient un signe négatif ou un point décimal, cette méthode ne le gérera pas correctement.

Méthode 2 : Utilisez la fonction preg_split

La fonction preg_split peut diviser la chaîne en un tableau selon le délimiteur spécifié, par exemple :

$str = "1,2,3,4,5,6";
$arr = preg_split('/,/', $str);
print_r($arr);
#🎜🎜 #Output :
Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
    [5] => 6
)

Cette méthode est plus flexible que str_split, et différents séparateurs peuvent être spécifiés en fonction de la situation réelle.

Méthode 3 : Utilisez la fonction d'éclatement

La fonction d'éclatement peut également diviser la chaîne en un tableau selon le délimiteur spécifié, par exemple :

$str = "1,2,3,4,5,6";
$arr = explode(',', $str);
print_r($arr);
#🎜 🎜# Sortie :

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
    [5] => 6
)
Par rapport à la fonction preg_split, la fonction d'explosion est plus concise, mais ses performances sont légèrement pires que celles de preg_split.

Méthode 4 : Utiliser les fonctions str_split et array_map

Cette méthode combine les fonctions str_split et array_map pour convertir une chaîne numérique en tableau, par exemple :

$str = "123456";
$arr = array_map('intval', str_split($str));
print_r($arr);
# 🎜🎜 #Sortie :
Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
    [5] => 6
)

Cette méthode utilise la fonction array_map pour convertir un tableau de chaînes en un tableau d'entiers, tout en conservant la capacité de fractionnement de la fonction str_split.

Méthode 5 : Utilisez des expressions régulières

Si vous devez analyser des chaînes numériques complexes, telles que "1,2,3 | 4,5,6 | 7,8 , 9", peut être analysé à l'aide d'expressions régulières, par exemple :

$str = "1,2,3 | 4,5,6 | 7,8,9";
$arr = preg_split('/[\s|,]+/', $str, -1, PREG_SPLIT_NO_EMPTY);
print_r($arr);

Sortie :

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
    [5] => 6
    [6] => 7
    [7] => 8
    [8] => 9
)

Cette méthode utilise la correspondance [s|,]+ dans les expressions régulières Tous les espaces, tuyaux et des virgules sont utilisés, et l'indicateur PREG_SPLIT_NO_EMPTY est utilisé pour garantir qu'aucun élément vide n'est divisé.

Résumé

Les méthodes ci-dessus peuvent convertir des chaînes numériques en tableaux, chacune avec ses propres avantages et inconvénients. Il est nécessaire de choisir la méthode la plus adaptée à la situation réelle.

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