PHP 数组转字符串问题

PHP 数组转字符串问题

在使用PHP时,我们会遇到许多与数组相关的问题,其中无法直接对数组进行操作。为了解决这个问题,我们首先需要将数组转换为字符串,然后才能有效地对单个元素进行操作。

字符串用于按顺序存储字符并将其表示为单个实体,具有单一的数据类型。因此,数据存储是灵活的,易于处理,而数组会将数据存储为特定的实体,数据存储是固定的。

我们将介绍PHP中将数组元素转换为字符串的三种方法。

1)PHP中的Implode()函数

Implode() 函数是一个内置的PHP函数,主要用于连接声明的数组中的所有元素。当所有数组元素被连接在一起时,它们形成一个字符串, implode() 函数与PHP中的 join() 函数类似,并将值作为字符串返回。

注意:- 数组以字符串形式表示,但基本数据类型仍然是数组。如果我们在转换后的字符串上使用gettype()函数,它仍然会显示为数组。

语法 -> implode (separator, array)

在这里, 分隔符 是指在将数组转换为字符串时,我们必须在元素之间添加的内容。默认值是空字符串””,但我们可以添加许多不同的值,如 ,_+;: 等。

Array 代表要作为字符串连接的数组。

示例: 将数组转换为字符串。

<?php  

// Declare an array 
arra = array ("This" , "Array" , "Will" ,     "Be" , "Converted" , "To" , "A" , "String");  

// original array
print_r (arra);
echo " <br> ";

echo " converted array " . " <br> ";

// Converting array elements into strings using implode function
echo implode (" ",$arra);

?>

当我们按照以上所述执行代码时,编译器将给出以下输出 –

Array ( [0] = > This [1] = > Array [2] = > Will [3] = > Be [4] = > Converted [5] = > To [6] = > A [7] = > String ) 
converted array 
This Array Will Be Converted To A String
  • 在上面的代码中,首先我们声明了一个数组,名称为 $arra ,并为它赋值。这里每个元素被视为独立的身份。
  • 为了显示原始数组,我们使用了 Print_r 函数,它会分别显示每个数组。
  • 最后,我们使用 implode() 函数将数组的所有元素转换为字符串。我们将参数 separator 设置为””以在元素之间添加空格,将参数 array name 设置为定义数组的名称。

示例: 将数组转换为字符串,使用不同的参数。

<?php
arra = array (? This " , " Is " , " An " , " ARRAY" , " ! " );

echo " <h4> "." Default array " . " </h2> ";
print_r (arra);

echo " <h4> " . " Array to string " . " </h2> ";
echo implode(" ",arra)."<br>"; // default separator
echo implode("_",arra)."<br>";
echo implode("-",arra)."<br>"; 
echo implode("/",arra);

echo " <h4> " . " Data type: - " . " </h2> ";
echo gettype ($arra);
?>

当我们按照上述的代码执行时,编译器将会给出以下输出 –

Default array
Array ( [0] => This [1] => Is [2] => An [3] => ARRAY [4] => ! ) 
Array to string
This Is An ARRAY ! 
This _ Is _ An _ ARRAY_ ! 
This - Is - An - ARRAY- ! 
This / Is / An / ARRAY/ ! 
Data type: -
Array
  • 在上述代码中,我们首先声明一个名为 $array 的数组,并赋予一些值。在这里,每个元素被视为独立的实体。
  • 为了显示原始数组,我们使用了 Print_r 函数,它会将数组的每个元素分别显示。
  • 然后,我们使用了 implode() 函数,将所有数组元素转化为字符串。最后,我们初始化了不同的 分隔符 以在元素之间添加空格。
  • 最后,我们对转换后的数组使用了gettype()函数,以展示即使转换为字符串,数组的初始数据类型仍然保持不变。

注意:我们可以使用explode()函数将字符串再次转换为数组

示例 – >将字符串转换回数组

    <?php  
    strng=" we will convert string back to array ";     echo " <strong> " . " original string -> " . " </strong> " . (strng) . " <br> ";
    //explode function converts an string into array  
    arra=explode(" ",strng);  
    echo " <strong> " . " converted array -> " . " </strong> " ;
    print_r($arra);  
    ?>  

当我们按照上述代码执行时,编译器将会给出以下输出结果 –

original string -> we will convert the string back to an array 
converted array -> Array ( [0] = > we [1] = > will [2] = > convert [3] = > string [4] = > back [5] = > to [6] = > array )
  • 在上面的代码中,我们首先声明了一个名为$strng的数组,并为其赋值。
  • 然后,我们使用了 explode() 函数,将所有的字符串元素转换回数组。最后,我们将转换后的字符串存储到变量 $arra 中。
  • 为了显示原始数据,我们使用了 Print_r 函数,它会分别显示每个数组。

2) PHP中的Join()函数

Join() 函数是一个内置的PHP函数,通常用于将数组连接起来并返回一个字符串。

语法 -> join (separator, array)

分隔符 是指在将数组转换为字符串时需要在元素之间添加的内容。默认值是一个空字符串””,但我们可以添加多种不同的值,如”, ” “-” “_” + “;” “:”等。

数组 代表将作为字符串连接的数组。

示例: 使用join方法将数组转换为字符串。

<?php
    // PHP Code to implement join function

    arra = array ("This" , "Array" , "Will" ,     "Be" , "Converted" , "To" , "A" , "String");  
echo " <strong> " . " original array " . " </strong> " . " <br> ";
      // original array
print_r (arra);
echo " <br> ";

echo " <strong> " . " converted array  " . " </strong> " . " <br> ";

// Converting array elements into strings using implode function
echo join (arra). " <br> ";
echo join (" _ ",arra);
?>

当我们按照上述代码执行时,编译器会给出输出 –

original array 
Array ( [0] = > This [1] = > Array [2] = > Will [3] = > Be [4] = > Converted [5] = > To [6] = > A [7] = > String ) 
converted array 
This Array Will Be Converted To A String 
This _ Array _ Will _ Be _ Converted _ To _ A _ String
  • 在上面的代码中,首先我们声明了一个名为 $arra 的数组,并给它赋了一些值。这里每个元素都被视为一个独立的身份。
  • 为了显示原始数据,我们使用了 Print_r 函数,它会将每个数组单独显示出来。
  • 最后,我们使用了 join() 函数,它将把数组的所有元素转换成一个字符串。我们初始化了两个参数 separatorarray name ,分别用于在元素之间添加空格和定义数组。

3) Json_encode()函数在PHP中的使用

Json_encode() 函数是PHP中的一个内置函数,通常用于将数组和对象转换成JSON字符串(JavaScript对象表示)。

注意:- JSON通常用于从Web服务器检索数据,并在网页上显示相同的数据。

语法 -> json_encode (array / object name)

Array/Object Name 代表将作为字符串连接的数组。

**示例 – > ** 使用json_encode将数组转换为字符串。

<?php 

// Declare multi-dimensional array 
Profile = array(    " f-name " => " ABC ",    " l-name " => " DEF ",
    array(        " email " => " abc@def.com ",        " mobile " => " abcdefghij ",
        array(" address " =>" klmnopqrst ",
              " city " => " OAB ",
              " pincode " => " 110090 ",
              )
    ) 
); 

// Use json_encode() functionjson  =  json_encode(Profile); 

// Display the output 
echo(json); 

?>

执行上述代码时,编译器将输出:

{"f-name":"ABC","l-name":"DEF","0":{"email":"stash","mobile":"abcdefghij","0":{"address":"klmnopqrst","city":"OAB","pincode":"110090"}}}
  • 在上面的代码中,我们首先声明了一个名为 $profile 的数组,并在变量内声明了一个多维数组。
  • 之后,我们声明了一个变量 $json ,用于保存返回值。
  • 然后,我们使用了 json_encode() 函数,将数组的所有元素转换为字符串。
  • 最后,我们使用 echo($json) 来获取输出字符串。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程