zone de texte php en tableau

WBOY
Libérer: 2023-05-06 13:22:10
original
888 Les gens l'ont consulté

Dans la programmation PHP, textarea est un élément de formulaire courant. Lorsque l'utilisateur saisit du texte dans la zone de texte et soumet le formulaire, nous devons généralement convertir le texte en tableau pour une utilisation facile lors du traitement ultérieur. Ci-dessous, je présenterai plusieurs méthodes pour convertir le texte d'une zone de texte en tableaux.

Méthode 1 : Utilisez la fonction éclater()

En PHP, la fonction éclater() peut diviser une chaîne en plusieurs sous-chaînes et renvoyer un tableau. Nous pouvons utiliser cette fonction pour diviser le texte de la zone de texte en plusieurs lignes, puis diviser chaque ligne en éléments en fonction de délimiteurs (tels que des espaces, des tabulations, etc.) pour former un tableau bidimensionnel.

L'exemple de code est le suivant :

$text = $_POST['textarea']; // 假设textarea的name为textarea
$lines = explode("\n", $text); // 将文本按行分割成数组
$array = array();
foreach ($lines as $line) {
    $array[] = explode(" ", $line); // 将每行按照空格分割成元素,并添加到二维数组中
}
Copier après la connexion

De cette façon, $array est le tableau que nous voulons obtenir. Il est à noter que dans le code ci-dessus, nous divisons chaque ligne en éléments selon les espaces. Vous pouvez également choisir d'autres délimiteurs en fonction de la situation réelle.

Méthode 2 : utilisez la fonction preg_split()

En plus de la fonction explosive(), il existe également une fonction preg_split() en PHP, qui peut diviser une chaîne en plusieurs sous-chaînes basées sur des expressions régulières et renvoyer un tableau. Nous pouvons utiliser cette fonction pour diviser le texte de la zone de texte en plusieurs éléments afin de former un tableau unidimensionnel ou un tableau bidimensionnel.

L'exemple de code est le suivant :

$text = $_POST['textarea']; // 假设textarea的name为textarea
$array = preg_split("/\s+/", $text); // 将文本按空格分割成数组,\s+表示一个或多个空格
Copier après la connexion

De cette façon, $array est le tableau que nous voulons obtenir. A noter que dans le code ci-dessus, nous utilisons l'expression régulière "s+" pour représenter un ou plusieurs espaces. Vous pouvez choisir d'autres expressions régulières en fonction de la situation réelle.

Méthode 3 : Utilisez une boucle foreach

Si vous souhaitez lire le texte dans la zone de texte ligne par ligne et le stocker dans un tableau, vous pouvez utiliser une boucle foreach.

L'exemple de code est le suivant :

$text = $_POST['textarea']; // 假设textarea的name为textarea
$array = array();
foreach(preg_split("/\n/", $text) as $line){
    $array[] = trim($line); // 将每行的字符串添加到数组中,trim()函数用于去除首尾空格
}
Copier après la connexion

De cette façon, $array est le tableau que nous voulons obtenir. Il convient de noter que dans le code ci-dessus, nous utilisons la fonction preg_split() pour diviser le texte en tableaux par ligne, et utilisons la fonction trim() pour supprimer les espaces de début et de fin de chaque ligne de chaîne.

Résumé :

Cet article présente trois méthodes de conversion de zone de texte en tableaux, en utilisant la fonction explosive(), la fonction preg_split() et la boucle foreach. Différentes méthodes doivent être sélectionnées en fonction de la situation réelle afin d'obtenir une écriture de code plus efficace et plus flexible.

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!