[b]1. in_array()函式[/b]
$zero = "0";
$za = array("00");
if(in_array($zero, $za, true))else
這段**應該輸出什麼?答案是in,而不是not in。
然後測試一下這個:
$zero = "0";
$za = array("00");
if("0" == "00")
返回'0'=='00'。
所以以後要注意:對於字串不是說in,就表示那個字元在array裡面。
[b]2. strtolower()函式[/b]
我在這裡談過:[url]我的解決方式是:
urldecode(strtolower(urlendoce($str)));
[b]3. trim()[/b]
如果面對的是英文本元,那麼trim()應該就滿足了,但是對於中文字元,就應該重寫以trim掉全形的空格:
function cntrim($value)
[b]4. empty():[/b]
這個就有點像上面那個in_array()了,如果你要判斷乙個textarea裡面是否有值,不能光使用empty,因為'0'字串也會返回empty(但奇怪的是'00'就不會返回empty),重寫以應對這種情況:
function non_szero_empty($value)
[b]5. htmlentities():[/b]
與strtolower()類似,htmlentities也會出現一些轉義gbk字元的問題,以致出現亂碼。索性這樣替換:
function _myhtmlentities($value)|x[a-fa-f0-9])|[a-za-z][a-z0-9]);)/', '&\\1', str_replace(array('&', '"', '<', '>'), array('&', '"', '<', '>'), $value));
$value = str_replace(array('&', '"', '<', '>'), array('&', '"', '<', '>'), $value);
return $value;
}
不過現在還在疑惑為什麼htmlentities會出現亂碼,這樣改為什麼又可行。計畫有時間看源**一**竟。
PHP處理字元中的emoji表情
目錄 utf 8 編碼的 emoji 表情或者某些特殊字元占用 4 個位元組。utf 8 編碼的常用中文字元占用 3 個位元組。三個 php 內建函式 mixed mb strlen string str string encoding mb internal encoding 返回具有 encod...
string字串中處理字元的問題 for迴圈
對於string字串中處理某單個字串,一般採用的是下標法和普通的for迴圈。在看c primer中發現針對不同的情況可以有不同的處理方法。現總結如下 有一些c函式可以用來處理字元,主要是cctype標頭檔案中的函式,使用要包含該標頭檔案 isalnum c 當c是字母或者數字時為真 isalpha ...
php 中字串處理函式
1 查詢字元位置函式 strpos str,search,int 查詢search在 str中的第一次位置從int開始 stripos str,search,int 函式返回字串在另乙個字串中第一次出現的位置。該函式對大小寫不敏感 strrpos str,search,int 查詢search在 s...