關於php中trim ltrim和rtrim

2022-09-02 01:06:10 字數 2352 閱讀 7227

以ltrim為例

先看手冊說明先

ltrim() 函式從字串左側刪除空格或其他預定義字元。

ltrim(string,charlist)
引數

描述string

必需。規定要轉換的字串。

charlist

可選。規定從字串中刪除哪些字元。

如果未設定該引數,則全部刪除以下字元:

貌似看不出什麼。看下手冊中的例子。

[php]view plain

copy

<?php  

$text

= "\t\tthese are a few words :) ...  "

;  $binary

= "\x09example string\x0a"

;  $hello

= "hello world"

;  var_dump($text

, $binary

, $hello

);  

print "\n"

;  $trimmed

= ltrim(

$text

);  

var_dump($trimmed

);  

$trimmed

= ltrim(

$text

, " \t."

);  

var_dump($trimmed

);  

$trimmed

= ltrim(

$hello

, "hdle"

);  

var_dump($trimmed

);  

// trim the ascii control characters at the beginning of $binary

// (from 0 to 31 inclusive)

$clean

= ltrim(

$binary

, "\x00..\x1f"

);  

var_dump($clean

);  

?>   

以上會輸出:

string(32) "        these are a few words :) ...  "

string(16) " example string

"string(11) "hello world"

string(30) "these are a few words :) ... "

string(30) "these are a few words :) ... "

string(7) "o world"

string(15) "example string

"

貌似只說了過濾空格、製表符什麼的。

當然我們有時候也會這麼寫:

[php]view plain

copy

$str

= 'tmp_member'

;  echo

ltrim(

$str

, 'tmpe_'

);  

輸出結果為 ember

但是這貌似不是我們想要的結果(member)這是為什麼呢?

我們再寫幾個類似的語句試試先

[php]view plain

copy

$str1

= 'tmp_umember'

;  echo

ltrim(

$str1

, 'tmp_'

);  

echo''

;  $str2

= 'tmp_mpmmtmpmpmmember'

;  echo

ltrim(

$str2

, 'tmp_'

);  

echo''

;  $str3

= 'tmp_mpmmtmpmpmmember'

;  echo

ltrim(

$str3

, 'tmpe_'

);  

以上的輸出結果為:

umember

ember

ber綜上所述,ltrim函式的第二個引數只是個字元列表而不算做一整個字串,m是字元列表中包含的字元,所以就ltrim掉了。

ltrim過濾的時候遇到非字元列表中的字元就停止過濾,返回過濾後的值。

所以,才會出現上面的三個結果。

同理 rtrim和trim都是這個原理,只不過過濾的方向不一樣罷了。

關於PHP中變數的判定

由於php解釋性語言,所以乙個變數即使沒有定義也可以被使用而不會引起error。請看下面這個例子 輸出的結果是 empty no set null no defined case 0 有其實最後乙個switch判斷,這是乙個比較隱晦的錯誤,所以在使用前進行一次判斷還是有意義的。同時我們可以看到有些的...

PHP中關於佇列的實際應用

一 佇列的概念 資料結構 佇列 queue 是運算受到限制的一種線性表。只允許在表的一端進行插入,而在另一端進行刪除元素的線性表。隊尾 rear 是允許插入的一端。隊頭 front 是允許刪除的一端。空佇列是不含元素的空表。假設有個佇列q a1,a2,an 則a1為隊頭元素,an為隊尾元素。元素入隊...

PHP中關於陣列的運算題

1.寫函式建立長度為10的陣列,陣列中的元素為遞增的奇數,首項為1.function createarr first,length return arr print r createarr 1,10 2.建立長度為10的陣列,陣列中的數為遞增的等比數,比值為3,首項為1.function creat...