首頁 >後端開發 >php教程 >如何透過換行符號可靠地分解 PHP 字串?

如何透過換行符號可靠地分解 PHP 字串?

Linda Hamilton
Linda Hamilton原創
2024-12-02 12:15:10610瀏覽

How to Reliably Explode a PHP String by New Line Characters?

按換行符分解 PHP 字串

在 PHP 中,explode() 函數用於根據指定的分隔符號。但是,在處理包含換行符的字串時,使用簡單的“n”分隔符號可能不會總是按預期工作。

您的程式碼 $skuList =explode('nr', $_POST['skuList']) ;不起作用,因為它使用「nr」分隔符,它代表 Windows 和 Mac 換行符。但是,在 Linux 或 Unix 等系統上,僅使用“n”。

最佳實踐:

按新行分解字串的最佳實踐是使用PHP 常數 PHP_EOL。此常數代表目前系統的行結束符,確保代碼與系統無關。

$skuList = explode(PHP_EOL, $_POST['skuList']);

警告:

雖然使用 PHP_EOL 可以促進系統獨立,但請注意在系統之間移動資料時應執行此操作。此常量的值可能因係統而異,從而可能導致數據不準確。因此,建議在儲存資料之前徹底解析數據,以刪除任何與系統相關的元素。

更新:

但是,在這種特定情況下,正如所指出的@Andreas,這個解決方案可能不合適,因為$_POST['skuList' ] 中的新行字元來自瀏覽器,而不是伺服器。因此,@Alin_Purcaru 推薦了更合適的解決方案:

$skuList = preg_split('/\r\n|\r|\n/', $_POST['skuList']);

此正規表示式根據不同作業系統使用的任何常見換行符序列來拆分字串。

以上是如何透過換行符號可靠地分解 PHP 字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn