Maison  >  Article  >  développement back-end  >  Comment convertir une chaîne en tableau en php (séparés par des espaces)

Comment convertir une chaîne en tableau en php (séparés par des espaces)

青灯夜游
青灯夜游original
2022-05-11 21:10:365962parcourir

Méthode de conversion : 1. Utilisez éclater(), utilisez des espaces comme délimiteurs pour diviser la chaîne et la convertir en tableau, la syntaxe est "explose(" ",$str)" 2. Utilisez "preg_split('/ / ', $str,-1,PREG_SPLIT_OFFSET_CAPTURE)".

Comment convertir une chaîne en tableau en php (séparés par des espaces)

L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 7.1, ordinateur DELL G3

Il existe trois méthodes intégrées à PHP pour convertir des chaînes en tableaux :

  • Fonction str_split()

  • Fonction explosion()

  • fonction preg_split()

Parmi elles, la fonction str_split() divise la chaîne en fonction de la longueur des caractères et passe la sous-chaîne dans le tableau

tandis que les fonctions explosive() et preg_split() toutes les chaînes divisées en fonction des caractères spécifiés et transmettre les sous-chaînes dans des tableaux.

Utilisez donc les fonctions explosive() et preg_split() pour convertir la chaîne en un tableau avec des espaces comme délimiteurs.

1. Utilisez la fonction explosive()

explode() peut diviser une chaîne en fonction du délimiteur de chaîne, c'est-à-dire qu'elle divise une chaîne en plusieurs sous-chaînes en fonction du délimiteur, puis combine ces sous-chaînes en une tableau et retourné.

explode($delimiter, $string [, $limit])

La description du paramètre est la suivante :

  • $delimiter : caractère délimiteur utilisé pour diviser la chaîne
  • ; $string : la chaîne qui doit être divisée ;
  • $limit : paramètre facultatif, peut être vide, précise le nombre d'éléments du tableau à renvoyer
    • ; Si $limit n'est pas vide et est positif, le tableau renvoyé contient au plus des éléments $limit, le dernier élément contenant le reste de $string ; Si $limit n'est pas vide et négatif, renvoie tous les éléments $limit sauf les derniers
    •  ; Si $limit est de 0, il sera traité comme 1 
    •  ; Si $limit est vide, tous les éléments du tableau sont renvoyés.
  • Définissez simplement $delimiter sur ' '.

Exemple :
' '即可。

示例:

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$str = &#39;hypertext language programming&#39;;
var_dump($str);
$arr=explode(" ",$str);
var_dump($arr);
?>

Comment convertir une chaîne en tableau en php (séparés par des espaces)

2、使用preg_split()函数

preg_split() 函数通过一个正则表达式来分割字符串。

preg_split ( string $pattern , string $subject [, int $limit = -1 [, int $flags = 0 ]] )

参数说明如下:

  • $pattern:用于匹配的模式,也即正则表达式。
  • $subject 要分割的字符串。
  • $limit:可选参数,如果指定,就将限制分隔得到的子串最多只有 limit 个,并且最后一个子串将包含所有剩余部分。limit 值为 -1、0 或 NULL 时都代表“不限制”,建议使用 NULL。
  • $flags:可选参数,它有 3 个取值。
    • 若设置为 PREG_SPLIT_NO_EMPTY,则 preg_split() 将返回分隔后的非空部分。
    • 若设置为 PREG_SPLIT_DELIM_CAPTURE,则分隔的模式中的括号表达式将被捕获并返回。
    • 若设置为 PREG_SPLIT_OFFSET_CAPTURE,则对于每一个出现的匹配返回时会附加字符串偏移量。

                注意:这将会改变返回数组中的每一个元素,使每个元素成为一个由第 0 个元素为分隔后的子串、第 1 个元素为该子串在 subject 中的偏移量组成的数组。

返回值:返回一个使用 $pattern 分割 subject 字符串后得到的子串组成的数组。

只需将$pattern设置为/ /

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$str = &#39;1 2 3 4,5 6-7 8=9&#39;;
var_dump($str);
$arr=preg_split(&#39;/ /&#39;, $str, -1, PREG_SPLIT_OFFSET_CAPTURE);
var_dump($arr);
?>

 Comment convertir une chaîne en tableau en php (séparés par des espaces)

2. Utilisez la fonction preg_split() Comment convertir une chaîne en tableau en php (séparés par des espaces)

preg_split() pour diviser une chaîne via une expression régulière. rrreeeLa description du paramètre est la suivante :

🎜🎜$pattern : Le modèle utilisé pour la correspondance, c'est-à-dire l'expression régulière. 🎜🎜$subject La chaîne à diviser. 🎜🎜$limit : Paramètre facultatif. Si spécifié, les sous-chaînes obtenues en limitant la séparation seront limitées à la limite maximale, et la dernière sous-chaîne contiendra toutes les parties restantes. Lorsque la valeur limite est -1, 0 ou NULL, cela signifie « aucune limite ». Il est recommandé d'utiliser NULL. 🎜🎜$flags : Paramètre facultatif, il a 3 valeurs. 🎜🎜S'il est défini sur PREG_SPLIT_NO_EMPTY, preg_split() renverra la partie non vide séparée. 🎜🎜Si défini sur PREG_SPLIT_DELIM_CAPTURE, les expressions entre crochets dans les modèles délimités seront capturées et renvoyées. 🎜🎜S'il est défini sur PREG_SPLIT_OFFSET_CAPTURE, le décalage de chaîne sera ajouté à chaque occurrence d'une correspondance. 🎜🎜

Remarque : Cela modifiera chaque élément du tableau renvoyé afin que chaque élément devienne un tableau composé du 0ème élément étant la sous-chaîne séparée et du 1er élément étant le décalage de la sous-chaîne dans le sujet. 🎜🎜🎜🎜Valeur de retour : renvoie un tableau composé de sous-chaînes obtenues après avoir utilisé $pattern pour diviser la chaîne sujet. 🎜🎜Définissez simplement $pattern sur / /. 🎜🎜Exemple : 🎜rrreee🎜🎜🎜🎜Apprentissage recommandé : "🎜Tutoriel vidéo PHP🎜"🎜

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