在PHP中可以通過header函式來傳送頭資訊,還可以設定檔案的content-type,下面整理了一些常見檔案型別對於的content-type值。
PHP mb_strlen() 函式,可加入編碼判斷字串長度
如果你有用過 strlen() 函式,用來判斷字串長度算是相當好用,但是要判斷繁體中文字的字數就沒辦法做到了,所以這時候可以使用另一個相似的函式,那就是 mb_strlen(),因為 mb_strlen() 可以加入編碼判斷,像是萬國碼 UTF-8 等,語法如下。
PHP mb_strlen() 函式基本語法
mb_strlen( string, "string encoding" )
PHP mb_strlen() 函式的第一個參數 string 是要計算長度的字串,必要項目,而第二個參數 string encoding 則是要判斷的編碼,可以自定,例如萬國碼就用 utf-8,以下舉個簡單的範例。
PHP mb_strlen() 函式範例
這個範例會輸出的結果是 4,因為 mb_strlen 知道你要判斷的編碼是萬國碼 uft-8,所以 PHP 自動把「天氣真好」這四個繁體中文字型認出來了,如果採用的是 strlen() 函式,則輸出結果就會是 12 囉!
curl 是非常好用的工具
善用它可以做到抓取遠端的圖片儲存於本地端
有時候我們需要過濾搜尋引擎的流量
以下的代碼就相當的好用
資料來源http://stackoverflow.com/questions/677419/how-to-detect-search-engine-bots-with-php
回傳 JSON 的時後, 特別是有中文, 記得送 header(常忘記)...XD
或
JSON 是用純文字的 Type 回傳, 如果回傳的是 XML 格式, 那就需要回傳 XML 的 header(一樣也是常忘記的東西), 不過最近是比較少用 XML 格式回傳... XD
判斷 PHP 是否是 Command Mode
可以讀取 PHP_SAPI 這個定數
[PHP bug]
如果想算出下個月的此時, 一般會使用
$next_month = date('Y-m-d', strtotime('+1 month'));
問題:
但假設今天為5月31日, 結果則會變成7/1,
由於6月沒有31號, 所以自動進到下個月去.
解決方法:
先取得當月的第一天, 在進行計算即可
$first_day = date('Y-m-d', strtotime('first day of this month'));
$next_month = date('Y-m-d', strtotime($first_day . '+1 month'));
編碼後都一樣的符號:
`
!
@
#
$(錢號)
%
^
&
*
(
)
_
-
+
=
<
>
,
.
/
?
|
\
'
"
:
;
{
}
[
]
數字
英文
中文
~
檢查 POST 檔案來源是否為本 HOST 內的網頁 防止 CSRF 和 XSS
將 PHP 的 DOMNode 內容取出
今天我們來聊聊 PHP 的 Session
PHP Session 主要是以用戶端的 Cookie 來記錄一組 Hash,藉由這組 Hash 來查詢伺服端的 Session 是否存在
故一般來說 php.ini 設定檔案裡面建議使用 use only cookies,也就是用戶端必須開啟 Cookie 才可以使用 Session