Tag: PHP
PHP 7 還未發佈正式版, 只發佈了 RC 1 版本, 但對於 PHP 的開發者, 預先在測試環境安裝好 PHP 7 的環境, 測試程式碼是否可以正常運作也很重要, 這裡會介紹在 RHEL 及 CentOS 安裝 Apache + MariaDB + PHP 7。 安裝 MariaDB 執行以下指令安裝 …
以下是用 PHP 列出目錄內容的方法,當然也可以略為修改以程式碼改為 function 使用:
當編譯 PHP 之後, 發覺需要加入一些額外的模組, 在不重新編譯 PHP 的情況下, 可以用 phpize 編譯單一模組, 在 php.ini 加入模組的 .so 便可以。以下會以 GD 為例, 用 phpize 單獨編譯 GD 模組。 在編譯 GD 模組前, 先用 YUM 安裝 GD …
Memcached 是一套開放源碼的分散式記憶體快取系統, 目前已經有多個網站使用。在網站的應用上, 由於資料庫的查詢多數是讀取, Memcached 先將資料庫加以緩存, 那便可以減少資料庫的讀取, 從而增加效率。Memcached 在 PHP 另一個常用的地方是用作緩存 session。下文會示範在 CentOS 7 安裝 Memcached 及 Memcached 的 PHP 模組。 1. 安裝 Memcached 在 RHEL 及 CentOS 十分簡單, …
在網上很多工具可以檢查 IP 所屬國家, 大多數都是付費工具, 免費版 IP 的覆蓋率較低, 及只包含基本國家資訊。 今天介紹的是 IP Geolocation API, 雖然它也有收費版, 但這只適用於商用量用戶, 免費版提供每日 1,000 個查詢, 及不支援 SSL, 其他內容與付費版是一樣的。 使用上十分簡單, 只要用 GET 請取網頁內容就可以, 例如 Google 的 DNS IP …
如果以 UTF-8 編碼的 PHP 網頁在瀏覽器出現亂碼, 一般都是設定錯誤編碼所致, 要解決分別可以透過 HTML 的 meta tag, PHP Header 及 Apache 進行設定, 以下是解決方法: HTML Meta Tag: 在 HTMl 的 及 加入以下這行, 向瀏覽器宣告使用 UTF-8 編碼: PHP …
PHP 的 CURL 除了可以傳送 POST 請求外, 還可以用作上傳檔案。方法與傳送 POST 請求差不多, 只要宣告以 multipart/form-data 模式傳送, 以及在傳送的值前面加上 “@” 符號, 後面接著是檔案的絕對路徑, 以下是例子: 上面例子會將 /path/to/file.txt 上傳到 http://localhost/path.php, 上傳欄位名稱是 upload_file.
PHP 要擷取遠端網頁或者傳送 GET 請求可以用 file_get_contents() 函式做, 但如果要發送 POST 請求, 例如自動填寫表單等, 就可以用 CURL 實現。以下 PHP 的 CURL 模組發送 POST 及 GET 的方法: PHP 傳送 GET 請求 如果只是傳送 GET 請求, 用 …
一般 PHP 的上傳檔案方法, 是將上傳的檔案放到暫存目錄, 再複製到指定的目錄, 雖然操作上方便, 但問題是儲存上傳檔案的目錄必需要有寫入權限 (CHMOD 777), 而且不能上傳到遠端伺服器。 要解決以上問題, 我覺得較簡單的方法是用 PHP 內建的 FTP 功能, 例如現時 WordPress 的更新功能, 也是透過 FTP 操作。以下會介紹在 PHP 連接到 FTP 上傳及下載檔案的方法: FTP 下載檔案 FTP …
在安裝了 phpMyAdmin 後, 如果沒有安裝 PHP 的 mbstring 模組, 會在 phpMyAdmin 看到以下錯誤: 找不到PHP內部mbstring編碼模組,沒有這個模組,phpMyAdmin無法準確地分割雙字元文字,而可能產生問題 要解決就要安裝 PHP 的 mbstring 模組, 如果 PHP 是用編譯源碼的方法安裝, 只要重新編譯一次, 在 ./configure 時加入以下參數: –with-mbstring –enable-mbstring=all 如果是用 Yum 或者 …