依換行符號分割PHP 字串
處理多行輸入時,通常需要將字串分割為單獨的陣列線。 PHP的explode函數可以用於此目的,但它需要正確的分隔符號來準確地分割字串。
最初的嘗試,使用explode('nr', $_POST['skuList']),失敗了因為它假定換行符是 Windows 風格的回車符,後跟換行符 (rn)。但是,根據作業系統和輸入來源的不同,換行符號可能會有所不同。
最佳實務:使用 PHP_EOL
要解決此系統依賴性,建議使用PHP 常數 PHP_EOL。此常數表示目前系統的行尾字符,確保無論環境如何,字串的分割都是一致的。
$skuList = explode(PHP_EOL, $_POST['skuList']);
注意:資料中的系統依賴性
雖然使用PHP_EOL 使程式碼系統獨立,但在系統之間移動資料時了解潛在問題很重要。新系統的 PHP_EOL 常數可能有所不同,可能會破壞儲存的資料。為了避免這種情況,請在儲存之前完全解析和清理數據,以刪除依賴系統的元件。
瀏覽器特定的換行符
在此特定用例的上下文中,值得注意的是,該字串來自瀏覽器。瀏覽器根據作業系統使用不同的換行符號。要處理所有可能性,可以使用以下正規表示式:
$skuList = preg_split('/\r\n|\r|\n/', $_POST['skuList']);
此表達式匹配任何可能的換行符,確保無論來源如何,字串都能正確分割。
以上是如何在 PHP 中可靠地分割多行字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!