php中可以將數組轉換成字符串的形式,也可以將字符串通過某個特定的規律轉化成數組。那具體如何做呢?今天這篇文章就來說一說php中數組與字符串之間相互轉換的方法。

QQ截圖20190808101540.jpg

PHP 數組轉換成字符串的方法

国产视频appphp中有個內置函數 implode() 可以將數組的所有元素組合成字符串。

implode() 函數語法:

implode(separator,array)

參數:

separator:可選,自定義每個數組元素在組合字符串時用什么隔開

array:必需,要被操作的數組

示例1:

<?php
//feiniaomy.com
$arr = array('name','age','level');
echo implode(',',$arr);
?>

輸出結果:

name,age,level

注:以上輸出的結果中,是以逗號分割的,當然也可以換成其它的符號或留空

示例2:

<?php
header("Content-type: text/html; charset=utf-8");
$arr = array('綠色','紅色','藍色','黑色','白色');
echo implode(' ',$arr);
?>

輸出結果:

綠色 紅色 藍色 黑色 白色

PHP 字符串轉換成數組的方法

php 中的 explode() 函數可以把字符串以某個字符分割的方式,打散并組合成新的數組

国产视频appexplode()  使用語法:

explode(separator,string)

參數:

国产视频appseparator:必需,規定要分割的字符

string:必需,將要被操作的字符串

示例1:

<?php
header("Content-type: text/html; charset=utf-8");
$str = '山東,北京,上海,廣東,深圳';
$arr = explode(',',$str);
var_dump($arr);
?>

打印結果:

array(5) {
  [0]=>
  string(6) "山東"
  [1]=>
  string(6) "北京"
  [2]=>
  string(6) "上海"
  [3]=>
  string(6) "廣東"
  [4]=>
  string(6) "深圳"
}

示例2:

<?php
$str = 'aa bb cc dd ee';
$arr = explode(' ',$str);
var_dump($arr);
?>

打印結果:

array(5) {
  [0]=>
  string(2) "aa"
  [1]=>
  string(2) "bb"
  [2]=>
  string(2) "cc"
  [3]=>
  string(2) "dd"
  [4]=>
  string(2) "ee"
}

PHP 按長度分割字符串轉換成數組的方法

以面示例中的 explode() 函數可以按照某個規定的字符進行分割字符串,但是如果遇到雜亂無章沒有規律的字符串的話,我們可以使用PHP中的 str_split() 函數,按照指定的長度來分割字符串并轉成數組。

str_split():把字符串按照自定義長度分割到數組中去。

語法:

str_split(string,length)

參數:

国产视频appstring:要被分割的字符串

length:可選,每次要分割的長度,默認為1

示例1:

国产视频appstr_split()函數按默認長度進行分割字符串,并轉成數據元素

<?php
$str = 'mochu';
$array = str_split($str);
var_dump($array);
?>

打印結果:

array(5) {
  [0]=>
  string(1) "m"
  [1]=>
  string(1) "o"
  [2]=>
  string(1) "c"
  [3]=>
  string(1) "h"
  [4]=>
  string(1) "u"
}

示例2:

str_split() 函數按照每次3個字符的方式分割字符串,并轉成數據元素

<?php
$str = 'feiniaomy.com';
$array = str_split($str,3);
var_dump($array);
?>

打印結果:

array(5) {
  [0]=>
  string(3) "fei"
  [1]=>
  string(3) "nia"
  [2]=>
  string(3) "omy"
  [3]=>
  string(3) ".co"
  [4]=>
  string(1) "m"
}

示例3:

<?php
$str = 'feiniao';
$array = str_split($str,0);
var_dump($array);
?>

打印結果:

false

国产视频app注:此示例代碼在一些PHP環境下會拋出錯誤。

示例4:

<?php
$str = 'feiniao';
$array = str_split($str,20);
var_dump($array);
?>

打印結果:

array(1) {
  [0]=>
  string(7) "feiniao"
}

注意:

1、如果定義 str_split() 第二個參數小于1的話,此函數將返回 false,示例3

2、如果定義 str_split() 第二個參數大于要被分割字符串長度的話,只返回一個元素的數組,示例4