preg_split和explode實作分割textarea存放內容程式碼

小云云
發布: 2023-03-20 07:56:02
原創
1145 人瀏覽過

今天有個緊急的bug,說是後台在配置了白名單後,在手機端app無效,仍然顯示內容。收到郵件後,便走了遍流程,發現後台配置白名單是在textarea裡配置的,一行一個,再在程式碼裡看,使用的是explode函數分割,其中分隔符號使用的是\r\n。本文主要和大家分享PHP使用preg_split和explode分割textarea存放內容的方法,結合實例形式分析preg_split和explode函數的功能、使用技巧與文本字符串分割過程中的相關注意事項。

程式碼大致如下


explode('\r\n', $val);
登入後複製

之後,我便在自己的開發機上測試了下,發現這壓根不會分割textarea存入資料庫的內容,於是在手冊上找,發現了一個很有用的函數preg_split


$str = '1
2
3
4
5';
print_r(preg_split("/\n/",$str));
/*
Array
(
  [0] => 1
  [1] => 2
  [2] => 3
  [3] => 4
  [4] => 5
)
*/
登入後複製

【update】

下午的時候經同事提醒,發現原來是分割符有問題,因為在chrome和firefox瀏覽器中textarea是帶\n的換行符,而在ie中是\r\n的換行符,於是使用str_replace替換了下


#
$str = '1
2
3
4
5';
print_r(explode("\n", str_replace("\r\n", "\n", $str)));
Array
(
  [0] => 1
  [1] => 2
  [2] => 3
  [3] => 4
  [4] => 5
)
登入後複製

相關推薦:

PHP使用preg_split()分割特殊字元(元字元等)的方法分析

(PHP)正規表示式-preg_split函數的用法

PHP函數preg_split的正確使用方法_PHP教學

########

以上是preg_split和explode實作分割textarea存放內容程式碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!