首頁 > 後端開發 > PHP問題 > PHP中數組和字串如何進行轉換(必看)

PHP中數組和字串如何進行轉換(必看)

醉折花枝作酒筹
發布: 2023-03-11 17:48:01
轉載
4581 人瀏覽過

在php中,陣列和字串可以進行轉換,今天我們就來介紹一下陣列和字串進行轉換的方法,有需要的小夥伴可以參考參考。

PHP中數組和字串如何進行轉換(必看)

1、陣列轉字串

implode

方法介紹:

function implode ($glue = "", array $pieces) {}
登入後複製

主要有兩個參數 

一個是連接符號(glue:膠水的意思),預設是空字串 

一個是陣列

使用

$test = array("hello","world","php");
echo implode("-",$test);
登入後複製

結果: 

#
hello-world-php
登入後複製
登入後複製

如果是K-V形式的陣列呢?

$test = array("h"=>"hello","w"=>"world","p"=>"php");
echo implode("-",$test);
登入後複製

結果還是

hello-world-php
登入後複製
登入後複製

說明還是只對value有作用。

2、字串分割成陣列

2.1 按某個字元分割

function explode ($delimiter, $string, $limit = null) {}
登入後複製

explode (爆炸,可能是把這個字串炸開?) 

#參數解釋: 

delimiter,分隔符號 

limit 

文件google翻譯結果: 

如果limit設定為正,則傳回的陣列將包含最大限制元素,最後一個元素包含字串的其餘部分。

個人理解: 

limit 限制分割的份數,最後一份為剩下的字串分割後剩下的,當然如果為1的話,就是字串本身(已經過實驗) 

程式碼示範:

$str="hello-world-php";
$result = explode("-", $str);
var_dump($result);
$result = explode("-", $str,2);
var_dump($result);
登入後複製

輸出結果:

array(3) {
  [0]=>
  string(5) "hello"
  [1]=>
  string(5) "world"
  [2]=>
  string(3) "php"
}
array(2) {
  [0]=>
  string(5) "hello"
  [1]=>
  string(9) "world-php"
}
登入後複製

2.2 按距離讀取

可能字串不用分割,但需要把每個字元拿出來,也就是一個一個讀出來 

原始文檔:

**
 * Convert a string to an array
 * @link http://php.net/manual/en/function.str-split.php
 * @param string $string <p>
 * The input string.
 * </p>
 * @param int $split_length [optional] <p>
 * Maximum length of the chunk.
 * </p>
 * @return array If the optional split_length parameter is
 * specified, the returned array will be broken down into chunks with each
 * being split_length in length, otherwise each chunk
 * will be one character in length.
 * </p>
 * <p>
 * false is returned if split_length is less than 1.
 * If the split_length length exceeds the length of
 * string, the entire string is returned as the first
 * (and only) array element.
 * @since 5.0
 */
function str_split ($string, $split_length = 1) {}
登入後複製

部分翻譯: 

數組如果指定了可選的split_length參數,則傳回的數組將被分解為長度為split_length的區塊,否則每個區塊將是一個字元長度。

Convert a string to an array,這不就是把字串轉為數組嘛,用法沒啥可說的 

現在我想試一試,如果是5個長度的字符串,按兩位讀取,不足兩位時,最後一位是否保留? 

#當然推測來說為了數據的完整性,應該是要保留的。

$str = "hello";
var_dump(str_split($str,2));
登入後複製

結果也如我的推測

array(3) {
  [0]=>
  string(2) "he"
  [1]=>
  string(2) "ll"
  [2]=>
  string(1) "o"
}
登入後複製

推薦學習:php影片教學

以上是PHP中數組和字串如何進行轉換(必看)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:csdn.net
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
怎麼學好php
來自於 1970-01-01 08:00:00
0
0
0
PHP擴充intl
來自於 1970-01-01 08:00:00
0
0
0
php數據獲取?
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板