Maison > développement back-end > Problème PHP > Quels sont les moyens de convertir php en tableau ?

Quels sont les moyens de convertir php en tableau ?

青灯夜游
Libérer: 2023-03-16 16:02:01
original
3574 Les gens l'ont consulté

Comment convertir un tableau : 1. Ajoutez le type cible "(array)" entre parenthèses avant la variable spécifiée, la syntaxe est "(array) variable" 2. Utilisez settype() pour définir la variable sur le tableau ; tapez, la syntaxe "settype(variable, "array""); 3. Utilisez str_split() pour convertir la chaîne en tableau, la syntaxe est "str_split(string, element length)" ; la chaîne dans un tableau, la syntaxe "exploser (caractère divisé, chaîne)".

Quels sont les moyens de convertir php en tableau ?

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

Plusieurs façons de convertir PHP en tableau

Méthode 1. Ajouter des parenthèses avant la variable Le type cible "(array)"

  • (array) : Convertir en type de tableau

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$str = &#39;hello&#39;;
var_dump($str);
$arr=(array)$str;
var_dump($arr);
?>
Copier après la connexion

Quels sont les moyens de convertir php en tableau ?

Méthode 2 : Utiliser la fonction settype()

settype($var,$type) La fonction est utilisée pour définir la variable $var sur le type $type spécifié.

Définissez simplement $type sur ""array"" pour définir la variable $var sur le type de tableau. "array"”即可变量$var设置为数组类型。

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$str = &#39;hello&#39;;
var_dump($str);
$arr=settype($str,"array");
var_dump($arr);
var_dump($str);
?>
Copier après la connexion

Quels sont les moyens de convertir php en tableau ?

说明:settype()函数会改变原变量,设置成功时返回 TRUE, 失败时返回 FALSE。

方法3、使用str_split()函数--将字符串转化为数组

str_split() 函数把字符串分割到数组中,即将字符串转为字符数组。

str_split(string,length)
Copier après la connexion

参数说明如下:

  • string 必需。规定要分割的字符串。

  • length 可选。规定每个数组元素的长度。默认是 1。

示例:

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$str = &#39;hello&#39;;
var_dump($str);
$arr1=str_split($str);
var_dump($arr1);
$arr2=str_split($str,2);
var_dump($arr2);
?>
Copier après la connexion

Quels sont les moyens de convertir php en tableau ?

方法4、使用explode()函数--将字符串转化为数组

explode() 函数可以基于字符串分割符拆分字符串,即它将一个字符串根据分隔符拆分为若干个子串,然后将这些子串组合成数组并返回。

explode($delimiter, $string [, $limit])
Copier après la connexion

参数说明如下:

  • $delimiter:用于分割字符串的分割字符;
  • $string:需要分割的字符串;
  • $limit:可选参数,可以为空,规定要返回数组元素的数目;
    • 如果 $limit 不为空且为正数,则返回的数组最多包含 $limit 个元素,最后的那个元素包含了 $string 的剩余部分;
    • 如果 $limit 不为空且为负数,则返回除了最后的 $limit 个元素外的所有元素;
    • 如果 $limit 为 0,则会被当作 1;
    • 如果 $limit 为空,则表示返回所有数组元素。

只需将$delimiter设置为&#39; &#39;即可。

示例:

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

Quels sont les moyens de convertir php en tableau ?

方法5、使用preg_split()函数--将字符串转化为数组

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

preg_split ( string $pattern , string $subject [, int $limit = -1 [, int $flags = 0 ]] )
Copier après la connexion

参数说明如下:

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

Quels sont les moyens de convertir php en tableau ?

Remarque : La fonction settype() modifiera la variable d'origine, renvoyant TRUE si le paramètre réussit et renvoyant FALSE en cas d'échec. 🎜🎜🎜Méthode 3. Utilisez la fonction str_split() - convertissez la chaîne en un tableau🎜🎜🎜La fonction str_split() divise la chaîne en un tableau, c'est-à-dire convertit la chaîne en un tableau de caractères. 🎜
get_object_vars ($obj)
Copier après la connexion
Copier après la connexion
🎜La description du paramètre est la suivante : 🎜🎜🎜🎜string Obligatoire. Spécifie la chaîne à diviser. 🎜🎜🎜🎜longueur facultative. Spécifie la longueur de chaque élément du tableau. La valeur par défaut est 1. 🎜🎜🎜🎜Exemple :
🎜
<?php
class gfg {
    private $geeks = 0.02;
    public $for = 1;
    public $Geeks = "php";
    private $GEEKS;
    static $e;
     
    public function example() {
        var_dump(get_object_vars($this));
    }
}
 

$example = new gfg;
 
var_dump(get_object_vars($example));
  
$example->example();
  
?>
Copier après la connexion
Copier après la connexion
🎜Quels sont les moyens de convertir php en tableau ?🎜🎜🎜Méthode 4. Utilisez la fonction explosive() - convertissez la chaîne en un tableau🎜🎜🎜La fonction explosion() peut diviser la chaîne en fonction du délimiteur de chaîne, c'est-à-dire qu'elle le fera diviser un caractère La chaîne est divisée en plusieurs sous-chaînes en fonction du délimiteur, puis ces sous-chaînes sont combinées dans un tableau et renvoyées. 🎜
<?php
class gfg {
    public  $geeks = 0.02;
    public $for = 1;
    public $Geeks = "php";
    public  $GEEKS;
    public  $e;
}
 

$example = new gfg;
 
var_dump(json_decode(json_encode($example),TRUE));

?>
Copier après la connexion
Copier après la connexion
🎜La description du paramètre est la suivante : 🎜
    🎜 $delimiter : le 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, spécifie le nombre d'éléments du tableau à renvoyer
      🎜                        ; Si $limit n'est pas vide et est un nombre positif, le tableau renvoyé contient au plus des éléments $limit et le dernier élément contient la partie restante de $string ;               Si $limit n'est pas vide et est négatif, tous les éléments sauf les derniers éléments $limit sont renvoyés 🎜🎜                        ; Si $limit est 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 :
      🎜rrreee🎜 Quels sont les moyens de convertir php en tableau ?🎜🎜🎜Méthode 5. Utilisez la fonction preg_split() - convertissez la chaîne en un tableau🎜🎜🎜La fonction preg_split() divise la chaîne via une expression régulière. 🎜rrreee🎜La 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.
          🎜Si 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 : 🎜

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

          Quels sont les moyens de convertir php en tableau ?

          方法6:使用get_object_vars()函数--将对象转化为数组

          get_object_vars()返回由对象属性组成的关联数组。

          语法:

          get_object_vars ($obj)
          Copier après la connexion
          Copier après la connexion

          返回由 obj 指定的对象中定义的属性组成的关联数组。

          示例:

          <?php
          class gfg {
              private $geeks = 0.02;
              public $for = 1;
              public $Geeks = "php";
              private $GEEKS;
              static $e;
               
              public function example() {
                  var_dump(get_object_vars($this));
              }
          }
           
          
          $example = new gfg;
           
          var_dump(get_object_vars($example));
            
          $example->example();
            
          ?>
          Copier après la connexion
          Copier après la connexion

          Quels sont les moyens de convertir php en tableau ?

          方法7:使用json_encode()和json_decode()函数--将对象转化为数组

          使用json_encode函数将对象转换为json数据,再使用json_decode函数将json数据转换为数组。

          <?php
          class gfg {
              public  $geeks = 0.02;
              public $for = 1;
              public $Geeks = "php";
              public  $GEEKS;
              public  $e;
          }
           
          
          $example = new gfg;
           
          var_dump(json_decode(json_encode($example),TRUE));
          
          ?>
          Copier après la connexion
          Copier après la connexion

          Quels sont les moyens de convertir php en tableau ?

          推荐学习:《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!

Étiquettes associées:
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