如何在 PHP 中在新行處分割字串並將其放入陣列


PHP 是什麼?

PHP,代表超文字預處理器,是一種流行的用於 Web 開發的伺服器端指令碼語言。它旨在建立動態且互動的網頁。PHP 嵌入在 HTML 程式碼中並在伺服器上執行,生成傳送到客戶端瀏覽器的 HTML 輸出。PHP 憑藉其簡單易學的語法,允許開發人員構建動態網站、處理表單資料、與資料庫進行互動以及執行各種伺服器端任務。它擁有龐大的庫和框架生態系統,可以增強其功能並使開發人員能夠建立健壯且可擴充套件的 Web 應用程式。PHP 得到託管服務提供商的廣泛支援,使其成為 Web 開發專案的首選。

如何在 PHP 中在新行處分割字串並將其放入陣列

方法 1

使用 preg_split() 函式

PHP 中的 preg_split() 函式用於根據指定的正則表示式模式將字串拆分為一個由子字串組成的陣列。它允許您根據特定條件將字串分解為更小的部分。透過利用 preg_split() 的功能,您可以高效地根據靈活的模式分割字串,從而能夠以一種結構化的方式處理和操作 PHP 應用程式中的文字資料。

語法

preg_split() 函式的語法如下:

preg_split(pattern, string, limit = -1, flags = 0);
  • pattern:用於根據其分割字串的正則表示式模式。

  • string:需要分割的輸入字串。

  • limit(可選):指定在結果陣列中返回的最大元素數量。如果設為正值,則僅返回值中數量的元素。如果設為 0,將返回所有可能的元素。如果設為負值(預設值),則不設定限制。

  • flags(可選):指定用於修飾 preg_split() 函式行為的任何其他標誌。

示例

<?php

// A php program to separate string
// using preg_split() function

// String which to be converted
$str = "Pradeep Menon
Arjit
Kavitha deshmukh
John Peter
Peterson"; // This function converts the string $arr= preg_split ('/
/', $str); // print the information of array print_r($arr); ?>

輸出

Array
(
[0] => Pradeep Menon
[1] => Arjit
[2] => Kavitha deshmukh
[3] => John Peter
[4] => Peterson
)

程式碼說明

在此程式碼中,我們使用 preg_split() 函式,用換行符作為定界符將字串分成一個數組。

輸入字串 $str 包含一個用換行符分隔的名稱列表。然後,preg_split() 函式與正則表示式模式 /
/ 一起使用,以在每次出現換行符時分割字串。

執行 preg_split() 函式後,結果陣列 $arr 將單個名稱作為其元素。最後,使用 print_r() 函式顯示陣列的內容。

總之,此程式碼片段獲取一個用換行符分隔的名稱字串,應用 preg_split() 使用換行符作為定界符將其分割成一個數組,然後用分隔的名稱列印結果陣列。

方法 2

使用 explode() 函式

PHP 中的 explode() 函式用於根據指定的定界符將字串分割成一個子字串陣列。它是 preg_split() 函式的一個更簡單的替代方案,在處理簡單的定界符時特別有用,例如單個字元或固定字串。explode() 函式通常用於諸如解析 CSV 檔案、從句子中提取各個單詞或根據特定定界符分解字串等場景中。它提供了一種直接而有效的方法來將字串分割成更小的元件。

語法

explode() 函式的語法如下

explode(delimiter, string, limit = PHP_INT_MAX);
  • delimiter:指定用作定界符以分割輸入字串的字串。

  • string:需要分割的輸入字串。

  • limit(可選):指定在結果陣列中返回的最大元素數量。如果設定了,結果陣列最多有 limit 個元素。

示例

下面是 explode() 函式的一個示例

<?php

// PHP program to separate string
// using explode function

// String which to be converted
$str = "Pradeep Menon
Ajith Lakshman
John Peter
Peterson"; // Function to convert string to array $arr = explode("
", $str); // Print the information of array print_r($arr); ?>

輸出

Array
(
[0] => Pradeep Menon
[1] => Ajith Lakshman
[2] => John Peter
[3] => Peterson
)

程式碼說明

上述 PHP 程式碼片段演示了使用 explode() 函式將字串分成一個數組,使用換行符(
)作為定界符。

輸入字串 $str 包含一個用換行符分隔的名稱列表。然後,explode() 函式與換行符(
)作為定界符一起使用,將字串分割成一個子字串陣列。執行 explode() 函式後,結果陣列 $arr 將單個名稱作為其元素。最後,使用 print_r() 函式顯示陣列的內容。

結論

總之,preg_split() 和 explode() 都是用於根據指定的定界符將字串分割成陣列的 PHP 函式。preg_split() 具有使用正則表示式作為定界符的優點,提供了更靈活的高階模式匹配功能。它適用於複雜的分割要求,其中定界符可以有所不同或遵循特定的模式。另一方面,explode() 更加簡單和快速,適用於使用固定定界符(例如字元或字串)進行簡單的分割任務。在處理簡單且可預測的定界符時,它是一種更有效的選擇。

更新於: 31-Jul-2023

849 瀏覽量

提升你的 職業生涯

完成課程即可獲得認證

開始吧
廣告
© . All rights reserved.