標籤為 “PHP” 的頁面如下
強化 PHP 效能
網站開發人員必備的 20 張速記片 (cheat sheet)
網站開發人員每天需要周旋於 PHP (或其他伺服器端編程語言)、SQL、JavaScript、HTML、CSS、數據庫預存程序及一些不同用途的開發架構之間,總會有「執筆忘字」的時候,這時你可能會向 Google 或編程書籍求教。不過,網上不少好心人替我們便製了一些「速記片」(cheat sheet),方便我們隨時查閱,Anson Cheung 在他的網誌蒐羅了 20 張網站開發人員必備的速記片。
PHP 開發人員比較喜歡以 Windows 為開發平台
以 Linux 為平台的網站伺服器遠比 Windows 的多,相信沒有人有異議,網站的編程語言則以 PHP 最受歡迎,相信爭議性也不大(可能的競爭對手只有 Java),這樣說來難道微軟這個電腦業的巨人在網站開發的環境中便毫無優勢嗎?未必,根據 Zend 最近針對全球使用 Zend Framework 開發人員所做的調查,在 Windows 上編寫 PHP 的人佔了 42%,排名第一,第二位的 Linux 則是 38.5%,MacOS X 則在第三位,19.1%。不過網站的運作平台 Linux 則以 85% 遙遙領先其他操作系統。
Google 教你優化 PHP,PHP 開發團隊指內容不確
認識 PHP 的 Hashing Functions
Hashing function (散列函式) 在網頁應用中被廣泛採用,從數碼簽署、錯誤檢測、登入驗證、到壓縮儲存空間,由於它的原理比較複雜,很多人把它跟加密函式混淆,對於如何運用 hash function,如何選擇合適的 hash function,和它的優點缺點都不清楚,本文嘗試解答這些問題。
PHP Cheat Sheets
Cheat Sheet 又稱做「作弊紙」、「小抄」或「備忘紙」,不過我比較喜歡稱她做「速記片」,它是把一些常用的東西用很簡潔的格式紀錄下來方便快速檢查和重溫,當你嘗試從一個字串中抽取一部份內容,應該調用 PHP 的 mid()、substr()、還是 substring() ?1.3 == 1.30 是否為真?如果你有類似的煩惱,下面列出的免費 PHP 速記片一定可以幫的上忙:
解除 PHP max_execution_time 的限制
很多人都知道 php.ini 中預設的最長執行時間是 30 秒,這是由 php.ini 中的 max_execution_time 變量指定,倘若你有一個需要頗多時間才能完成的工作,例如要發送很多電子郵件給大量收件者,或者要進行繁重的數據分析工作,伺服器會在 30 秒後強行中止正在執行的程式,這個問題其實有解決辦法的。
用 PHP 實現 HTTP 身份驗證
HTTP 身份驗證 (HTTP authentication) 是一種十分常用而容易實作的驗證方法,它倚賴網頁伺服器的內置功能,大量縮短所需編寫的程式碼,對於用戶驗證的要求不高的系統,是一個很實用的驗證方法。Evert Pot 在他的[網誌][1]上討論了如何用 PHP 實作這種用戶驗證。
PHP vs .NET,如何抉擇?
很多人都曾經問過,或者被人問過,PHP 和 .NET 兩者哪一個比較好?Yahoo Answers 每隔一段時間便有人提出這個問題,很多網誌也參予了討論,大部分討論都集中於語言本身和開發工具的優劣,這方面受很多主觀因素影響,所以討論永遠沒完沒了,一位資深的新加坡 PHP 兼 .NET 開發人員在他的網誌上從另一個角度看這個問題。
PHP 是否理想的第一語言?
2008 年 4 月 PHP 使用統計
Nexen 發表了 2008 年 4 月份的 PHP 使用統計,他們調查了 2,800 萬個伺服器,涵蓋了 200 萬個 IP 地址,刪除沒有架設網站、無法聯絡、網絡服務供應商和使用 domain parking 的網域後,共有 1,250 萬個網站參與了這次統計,內容摘要如下,統計的方法可參閱 la section phpversion。
得到更好 PHP 工作的十個秘訣(第一部份)
經常有人埋怨市場上付給 PHP 開發人員的工資太低,或者 PHP 開發人員競爭激烈以致找工作困難,也有人說 PHP 開發人員的地位比不上其他編程語言,例如 Java 或者 Oracle 數據庫的 PL/SQL。PHP Classes 的 Manuel Lemos 為廣大的 PHP 愛好者提供十個找工作的秘訣,這些秘訣其實並不侷限於 PHP 的開發人員,所有資訊科技行業的工程人員都可以從中得到某些啟示。
2008 年 2 月 PHP 使用統計
Nexen 發表了 2008 年 2 月份的 PHP 使用統計,他們調查了 2,770 萬個伺服器,涵蓋了 200 萬個 IP 地址,刪除沒有架設網站、無法聯絡、網絡服務供應商和使用 domain parking 的網域後,共有 1,260 萬個網站參與了這次統計,內容摘要如下,統計的方法可參閱 la section phpversion。
PHP 5.3 的新函式:date_create_from_format()
PHP 的其中一位主要貢獻者 Derick Rethans 在他的網誌上表示,PHP 5.3 將會提供一個比 strtotime() 和 date_create() 函式更有彈性的新函式 date_create_from_format() 與及 DateTime 的新靜態成員函式 createFromFormat(),回應 PHP 社群長期以來提出的要求。
PHP 5.3 的新常數:__DIR__
雖然 PHP 5.3 尚未推出,但是它的新功能在網上已經被熱烈討論,官方預計的推出日期是 2008 年第一季,但是延期出貨是軟件工業的不成文規矩,在等待的同時,不妨研究一下這個新版本的各項新功能。
PHP 的三元運算符
2007 年 8 月 PHP 使用統計
Nexen 發表了 2007 年 8 月份的 PHP 使用統計,他們調查了 2,710 萬個伺服器,涵蓋了 240 萬個 IP 地址,刪除沒有架設網站、無法聯絡、網絡服務供應商和使用 domain parking 的網域後,共有 1,180 萬個網站參與了這次統計,內容摘要如下,統計的方法可參閱 la section phpversion。
Yahoo! 的 PHP 面試題目(第四部份)
若果你已經看過 Yahoo! 的 PHP 面試題目(第一部份)、第二部份及第三部份,請繼續觀看最後一部份第十七至第二十二題。首先會先列出題目,題解會寫在後面。
Yahoo! 的 PHP 面試題目(第三部份)
若果你已經看過 Yahoo! 的 PHP 面試題目(第一部份)及第二部份,請繼續觀看第三部份第十一至第十六題,其餘題目已經在第四部份轉載。每一部份的都會先列出題目,題解會寫在後面。
Yahoo! 的 PHP 面試題目(第二部份)
Yahoo! 的 PHP 面試題目(第一部份)
有否想像過網絡界的巨頭如 Google 和 Yahoo 怎樣評審應徵者的 PHP 水平?Nick Halstead 在他的網誌列出了 22 道 Yahoo! 在正式面試前給應徵者的 PHP 筆試題目,Matt Wilkin 看到後一時手癢,在他自己的網誌上寫下了詳細的題解,你不妨也測試一下自己的 PHP 就經到達了哪一個水平。我們會把這 22 道題目連同 Matt Wilkin 的提解分開數部份譯載,每一部份的都會先列出題目,題解會寫在後面,第二部份、第三部份和第四部份也已經刊登。
Cute Editor for PHP 6.0 - 一個所見即所得的線上 HTML 編輯器
Cute Editor for PHP 新推出了 6.0 版本,這是一個「所見即所得」(WYSIWYG)的線上 HTML 編輯器,PHP 應用開發人員可以藉著它把傳統的 HTML textarea 換成一個功能強大的所見即所得內容編輯器,這個編輯器可以在多種瀏覽器上運行,包括 IE、Firefox、Mozilla、Netscape、和 Safari,在無數免費的線上 WYSIWYG 編輯器可供下載的情況下,以港幣一千元購買這個編輯器是否值得呢?
2007 年 7 月 PHP 使用統計
Nexen 發表了 20076 年 7 月份的 PHP 使用統計,他們調查了 1,120 萬個伺服器,涵蓋了 240 萬個 IP 地址,刪除沒有架設網站、無法聯絡、網絡服務供應商和使用 domain parking 的網域後,共有 2,610 萬個網站參與了這次統計,內容摘要如下,統計的方法可參閱 la section phpversion。
PHPDocumentor 釋出 1.4.0 版
PHP Documentorr 是一個自動從原碼抽取注釋,然後產生 API 說明檔的工具,功能跟 Java 世界的 JavaDoc 差不多,分別是 PHP Documentor 是用 PHP 寫成。它的輸出檔案包括 HTML、PDF、CHM 和 XML DocBook,使用 Smarty 產生輸出檔案,所以改變輸出的排版格式十分簡單容易,所有原碼都有語法醒目顯示。使用方面,PHP Documentor 可以透過命令行或者網頁介面操作,運作速度極快。兼容 PHPXRef 和 JavaDoc 的注釋標籤,另外又有它自己的定義的標籤,構成功能強大的文檔產生工具。
PHP Web Application Framework 1.3
PhpWebApp 是一個應用開發架構,使得開發以關係數據庫為基礎的 PHP 網頁應用程式更加容易和簡單。它透過從 XHTML 延伸出來的 XML 模板,把設計和改變佈局的工作,從邏輯的實作中分割開來。它也藉著提供事件為本的編程模式,簡化應用程式邏輯的實作。此外,PhpWebApp 力求為網頁應用開發人員提供模塊化和代碼重用。
PHP4 正式進入倒數
這一次是真正的官方消息了── PHP.net 剛剛宣布 PHP4 只會開發至 2007 年年終,此後 PHP4 便不再會有新版本,即使是嚴重安全性補丁,也只會支援至 2008 年 8 月 8 日!
2007 年 6 月 PHP 使用統計
Nexen 發表了 2007 年 6 月份的 PHP 使用統計,他們調查了 1,090 萬個伺服器,涵蓋了 240 萬個 IP 地址,刪除沒有架設網站、無法聯絡、網絡服務供應商和使用 domain parking 的網域後,共有 2,550 萬個網站參與了這次統計,內容摘要如下,統計的方法可參閱 la section phpversion。
在 Windows 中自行編譯 PHP5 和 PHP6
有沒有想過嘗試一下最新的 PHP 功能?我們在 PHP 的下載頁面可以找到 PHP 的原始碼,只要配置好安裝設定檔,準備好所需的編譯工具,便可以製作一個屬於你的 PHP,你可以自行決定需要甚麼模組,不需要甚麼模組,怎樣優化程式碼,甚至安裝補丁,測試最新的版本和功能。
十大 PHP MVC 開發架構
又一個「十大排名榜」,這一個由 Jehzeel Laurente 列出的十大 PHP MVC 開發架構,是作者根據他的個人經驗和喜好選取的,其中有一些是響當當的著名牌子,也有一些較冷門的架構。
PHP 6.0 的轉變
PHP Hacks 有一篇報導介紹 PHP 6.0 將會有甚麼轉變,其中包括放棄三項最令人困擾的功能:register_globals、magic_quotes_gpc 及 safe_mode。第一項會引起巨大的安全漏洞,第二項會使數據混亂,也令到搬遷伺服器時產生不必要的困難,最後一項經常被人誤解,它的名字令人產生安全的錯覺。
常見的 PHP 保安問題
HKPUG 經常報導專家們提出有關 PHP 安全性的忠告,其實很多忠告都是幾乎「常識」的水平,即使沒有專家的提點也不應該觸犯,但是我們仍然不斷在討論區見到網友編寫漏洞百出的 PHP 程式,看得人觸目驚心,這裏我們再次介紹一篇有關 PHP 安全性的建議。
教學文件:用 PHP 產生 OpenOffice 文件
PHP DocWriter 是一個用來產生 OpenOffice.org XML(即 StartOffice/OpenOffice.org 文件)的 PHP 類別(class),它也可以直接聯繫 OpenOffice 應用程式來進行檔案格式轉換,把 OpenOffice.org XML 檔案轉換成任何 OpenOffice 支援的格式。
PHP5, Sqlite 及 Windows
在 Turn up the Crank 有一位作者分享他使用 PHP5、Sqlite、Windows 的經驗。作者需要一個數據庫儲存資料,由於涉及的資料處理工作很簡單,所以他選擇了 Sqlite,結果他發現:
2006 年 8 月 PHP 使用統計
Nexen 發表了 2006 年 8 月份的 PHP 使用統計,他們調查了 1,100 萬個網域,刪除沒有架設網站、無法聯絡、或者使用 domain parking 的網域後,共有 820 萬個網站參與了這次統計,內容摘要如下,統計的方法可參閱 la section phpversion。
使用 vim 編輯 PHP 檔案密技
教學文件:PHP 讀取、寫入和建立檔案
Jacques Noah 在 Dev Shed 發表了一篇 PHP 教學文件,介紹如何利用 PHP 來讀取、寫入和建立檔案。Jacques 從 Windows 和 Unix 環境下檔案的權限開始,然後利用大量例子和說明來講解如何透過 PHP 來讀取、寫入和建立檔案的步驟,也說明在多人編輯同一個檔案的情況下,如何鎖著檔案以防止衝突。
一個強化 PHP 安全性的擴充模組 Suhosin
Hardened-PHP 最近推出了 Suhosin 測試版(beta version),這是一個從原始碼層面提升 PHP 安全性的系統,所以不論是已知和尚未發現的安全性漏洞,不論這些漏洞出現在應用程式還是在 PHP 的核心部分,Suhosin 的安全關卡都可以防止這些漏洞做成破壞。
用 PHP 和 GD Library 處理圖像教學文件(第二部份)
Dennis Pallett 在 PHPit 發表了第二篇利用 PHP 和 GD Library 處理圖像的教學文件,HKPUG 曾經介紹過這個主題系列的第一篇文章,繼承第一篇的基礎知識,第二篇文章將介紹不同的放大縮小圖像方法、加添水印的技巧等。
IPM 投票:最常見的 PHP 應用程式安全漏洞
PHP 會被 Ruby 殺死嗎?
這個標題沒有惡意,只是用來吸引大家的注意力,文章的作者 Stefan Mischook 在他的網誌比較了 Ruby 和 PHP 兩種經常被人拿來比拼的網頁開發語言,事實上一些 PHP 社群對於 Ruby 近年推出的優秀(但並不完美)開發架構 Rails 有一點恐懼,藉著 Rails 的關係 Ruby 的普及程度大幅提高,對 PHP 構成一定的威脅。所以 Stefan 嘗試解答「PHP 會被 Ruby 殺死嗎?」
一些有關設計式樣(design pattern)的忠告
Stefan Mischook 在他的網誌說,設計式樣(design pattern)本身並不壞,只要用在恰當的地方,他說:「我們沒有理由用一部十八輪大卡車來拖動一張椅子。」他觀察到自從 PHP5 推出後,整個社群逐漸向著高階的編程技術發展,例證包括廣泛地使用物件導向概念和設計式樣。常用的設計式樣包括:
在 PHP 數據庫應用中五種常見的錯誤
數據庫跟其他工具一樣,若果不正確地使用,很容易出現濫用的情況,Jack Herrington 在一篇文章中說,你可以在 PHP 應用程式中建立數據庫、存取資料,然後在其上編寫商業邏輯,達成這些目標很有方法,可惜很多人仍然把事情弄糟。在這篇文章中他闡述數據庫設計,和存取數據庫的 PHP 程式的五種常見毛病,還有如何避開這些毛病,文中並附有大量實例。這五種毛病是:
用 PHP 和 GD Library 來處理圖像
我們需要開發架構嗎?
John Taber 承認網絡上已經有很多開發架構的宣傳和喧鬧聲,但是他仍然要在他的網誌中問:「我們需要開發架構嗎?」他還提出了其他問題,包括「一個網絡程式應該具備怎樣的結構?」、「怎樣才能輕快而有效率地完成工作?」他經過詳盡的研究後把意見按發表者的性格分為三類:豪情蓋天的開發人員、Rails 的忠實支持者、有實力的應用程式開發者。他認為自己正是第三類人,就是那種不在乎甚麼語言、甚麼架構,最重要把事情做好,程式容易維護,與及可以把成品儘快推出市場的開發策略,這類人需要的正是開發架構。
五種常見的 PHP 設計樣式 (design pattern)
「設計樣式」(design pattern) 這個概念最早是由軟件界「四大寇」(即 Erich Gamma, Richard Helm, Ralph Johnson, 和 John Vlissides)所撰寫的 Design Patterns 中提出,軟件開發者累積多年的經驗,知道在某些特定的情況下使用特定的技巧,可以得到最有效率和最好的結果,這些標準技巧就是所謂的「設計樣式」。
2006 年 6 月 PHP 使用統計
Nexen 發表了 2006 年 6 月份的 PHP 使用統計 ,他們調查了 1,100 萬個網域,刪除沒有架設網站、無法聯絡、或者使用 domain parking 的網域後,共有 550 萬個網站參與了這次統計,內容摘要如下,統計的方法可參閱 la section phpversion。
三個用 PHP 開發的 FAQ 系統
Steven Choy 在他的個人網頁介紹三個由 PHP 開發與及使用 MySQL 的免費 FAQ 系統,透過 Google 他搜索到一些使用這三個系統的網站,可以讓我們實在地看一下這幾個系統的使用情況。Steven 說:
PHP 五大常見保安問題
OWASP 發表了一篇名為 PHP Top 5(PHP 五大常見保安問題)的文章,SANS Top 20 2005’s PHP Section(2005 年度 SANS 互聯網 20 大安全漏洞 PHP 章節)就是根據這一篇文章的研究而寫成,研究的方法是在 Bugtraq 上搜尋所有包含 PHP 的文章,對每一個個案進行分析及分類,然後作者列出五大最常見的保安問題,與及他們的預防方法,在文章的末尾做這還列出了一些參考資料,對於編寫安全堅固的 PHP 應用程式很有幫助。
PHP 和 Ajax 初學者教學文件
IBM 的 developerWorks 有一篇介紹如何使用 PHP 和 Sajax 來編寫簡單應用程式的教學文件,很多人對 Ajax 這種嶄新的網頁技術都認識不深,實際運用它來編寫網頁的更少,這篇文章透過建立一個簡單的相簿系統,從純粹使用 PHP 開始,逐步加入 Ajax 功能,中間加插對 Ajax 的介紹,使讀者明白 Ajax 的特色,它如何突破了傳統的網站設計理念,怎樣在實際的設計中加入 Ajax 的元素。
如何選擇 PHP 架構?
若果說每隔幾天便有一個新的 PHP 的開發架構推出,一點也不誇張,網上也有不少討論哪些架構「最好」,哪些最受「歡迎」之類的文章,但是對於如何選擇一個合適你的架構卻鮮少論及,針對這個問題 Marz 提出了他的見解。
用 PHP 控制 CSS
在 thecssweblog 有一篇由 Amber Rhea 寫的有關使用 PHP 來動態控制 CSS 的文章。文章引述 Patrick Fitzgerald 另一篇有關使用 PHP 來控制顏色的文章。
如何選擇 PHP 架構
PHP Class Repository 的創辦人 Manuel Lemos 在他的網誌寫了一篇長文,提出一些選擇架構的忠告,也解釋了為何有些架構比其他架構更受歡迎,受到更廣泛的注意。最後他列出了一串架設 PHP Class Repository 的程式包。
PHP 有望成為第三受歡迎的編程語言
根據最新一期 Tiobe Programming Community 的報告,PHP 在最受歡迎編程語言排行榜已經追貼 C++,有望進入頭三名的位置,頭兩名分別是 Java 和 C,落後在 PHP 和 C++ 後面的是 Visual Basic 和 Perl。
PHP 全球使用統計
Nexen 發表了 2006 年 4 月份的 PHP 版本安裝統計 ,他們調查了 7 千 7 百萬個網域,刪除沒有架設網站、無法聯絡、或者使用 domain parking 的網域,共有 770 萬個網站參與了這次統計。