Time of Update: 2016-07-15
一些雜談 首先是本文寫作的初衷。我拿到關於Zend Engine
Time of Update: 2016-07-15
很多的PHP程式員,尤其是學習還不是很久的,都不知道PHP的精華所在。Perl當年如何在商界出名?其強大的Regex。而PHP呢?他是一門從Unix下發展起來的語言,當然也就繼承了Perl的很多特點,同時C的優點都有。快速、簡潔、明了,尤其是C程式員,PHP是至愛,我就是深愛著“PHP”(都忘了女友了)。這裡,我想來寫一篇PHP的變數、數組應用技巧和PHP的Regex、PHP的模板應用,以後有時間再寫PHP與COM、PHP與XML的完全結合。1、變數、數組的應用技巧(1)很多人用得不多的數組函數
Time of Update: 2016-07-15
PHP給人印象最深的莫過於:你不必因為想要用好它就去深入瞭解這種語言。想一想,在你所知道的語言中有多少能做到這一點呢?其中比較明顯的一個就是java了,僅編一個hello world就需要瞭解不少的知識,更別提建立一個web應用程式了。但對PHP,這些都不在話下。應該說PHP在訪問Bad
Time of Update: 2016-07-15
很多的PHP程式員,尤其是學習還不是很久的,都不知道PHP的精華所在。Perl當年如何在商界出名?其強大的Regex。而PHP呢?他是一門從Unix下發展起來的語言,當然也就繼承了Perl的很多特點,同時C的優點都有。快速、簡潔、明了,尤其是C程式員,PHP是至愛,我就是深愛著“PHP”(都忘了女友了)。這裡,我想來寫一篇PHP的變數、數組應用技巧和PHP的Regex、PHP的模板應用,以後有時間再寫PHP與COM、PHP與XML的完全結合。
Time of Update: 2016-07-15
變數類型變化(juggling)PHP不需要(或者說不支援)在聲名變數明確他的變數類型;一個變數的類型是由這個變數被使用的前後關係來決定的,也就是說,如果你給一個變數var賦了 一個字串的值,var就變成了字串變數。如果你再將一個整數賦值給var,他又變成了一個整數型變數。一個PHP自動轉化變數類型的例子是加法的操作符’+’。如果任何一個運算元都是雙精確度數,那麼所有的運算元被當作雙精確度數求值,並且結果也是雙精確度數。
Time of Update: 2016-07-15
【php100獨家特稿】PHP官方於昨天(12月8日)緊急發布了PHP的5.2.8版本,而官網上5.2.7的版本剛剛發布不到一周。是什麼原因讓PHP在一周發布兩個更新版本?根據PHP官網的說明,在上周發布的5.2.7版本中發現了magic_quotes_gpc()函數的一個嚴重Bug,所以緊急發布了5.2.8版本,並強烈建議使用者升級。PHP的magic_quotes_gpc()是用來取得PHP環境設定的變數magic_quotes_gpc (GPC,
Time of Update: 2016-07-15
for語句可以說是PHP(同時也是多種語言)的迴圈控制部份最基本的一個語句了,for語句的執行規律和基礎用法在這裡就不多說,可以參見PHP手冊for語句部分。PHP手冊中對它的文法定義如下: for (expr1; expr2; expr3) statement下面說說for語句幾種有用的變型。 1、無限迴圈 首先是人盡皆知的無限迴圈(亦可稱“死迴圈”)。由於空運算式null在文法上是有效,所以我們可以把for語句的三個運算式留空,這樣就會產生不斷執行for嵌套語句的效果。<?php for (
Time of Update: 2016-07-15
MVC模式在網站架構中十分常見。它允許我們建立一個三層結構的應用程式,從代碼中分離出有用的層,協助設計師和開發人員協同工作以及提高我們維護和擴充既有程式的能力。視圖(View)“視圖”主要指我們送到Web瀏覽器的最終結果??比如我們的指令碼產生的HTML。當說到視圖時,很多人想到的是模版,但是把模板方案叫做視圖的正確性是值得懷疑的。對視圖來說,最重要的事情可能是它應該是“自我意識(self
Time of Update: 2016-07-15
除了限制訪問,訪問方式也決定哪個方法將被子類調用或哪個屬性將被子類訪問. 函數調用與函數本身的關聯,以及成員訪問與變數記憶體位址間的關係,稱為綁定. 在電腦語言中有兩種主要的綁定方式?靜態繫結和動態綁定. 靜態繫結發生於資料結構和資料結構間,程式執行之前. 靜態繫結發生於編譯期, 因此不能利用任何運行期的資訊. 它針對函數調用與函數的主體,或變數與記憶體中的區塊. 因為PHP是一種動態語言,它不使用靜態繫結. 但是可以類比靜態繫結.動態綁定則針對運行期產生的訪問請求,只用到運行期的可用資訊.
Time of Update: 2016-07-15
命名變數,函數和類是挺困難的,除了要考慮到變數的名稱要易於理解,還要擔心是否這個名稱在其它某個地方已經使用過. 在一小段指令碼中,第二個問題是基本問題. 當你考慮重用你的代碼, 在這之後的項目代碼必須避免使用你用過的命名. 通常來說,可重用的代碼總是包含在函數或類中, 需要處理許多可能發生的命名衝突. 但函數和類之間也可能發生命名衝突. 你可以嘗試避免出現這種情況,通過在所有類前添加首碼的方法,或者你可以使用namespace語句.Namespace關鍵字給一塊代碼命名.
Time of Update: 2016-07-15
Zeev討論了Zend引擎帶來的物件模型,特別提到它與PHP的前幾個版本中的模型有什麼不同.當1997年夏天,我們開發出PHP 3, 我們沒有計劃要使PHP具備物件導向的能力. 當時沒有任何與類和對象有關的想法. PHP3是一個純粹面向過程的語言. 但是,在1997.8.27的晚上PHP3 alpha版中增加了對類的支援. 增加一個新特性給PHP,當時僅需要極少的討論,因為當時探索PHP的人太少. 於是從1997年八月起, PHP邁出了走向物件導向程式設計語言的第一步.確實,這隻是第一步.
Time of Update: 2016-07-15
在多數WEB開發人員眼中,ASP和JSP都被認為是領跑者,而PHP卻被認為是個弱小的“掙紮者”,或者說它是一門被貶低為業餘者才使用的語言,不值得參與企業WEB開發的競爭。在我看來,PHP沒有被當作競爭者的理由是評論者缺乏對它的瞭解,而且也不瞭解用於WEB開發的其他動作系統。和一些觀點相反,Windows不再佔有WEB虛擬機器主機服務市場的最大份額,我猜想它在WEB開發這一領域裡也在被摧城拔寨。在企業開發裡為什麼沒有PHP?很顯然,PHP被認為落後ASP和JSP太多,以至於它是沒有什麼用的,但是這
Time of Update: 2016-07-15
從默默自己向別人問怎麼學PHP開始,到後來不少人又來問默默怎麼學PHP,不管默默是新手,還是老鳥,似乎總是感覺摸不出一條清晰的脈絡來,不過,默默既然學會了PHP,那麼我走的這條路或多或少的有一定借鑒性。PHP的背景恐怕就不用默默贅言了,我相信大家選擇一種語言,並不是看它的背景和悠久曆史,更重要的是看它的實用性,華而不實的語言哪怕是再輝煌的曆史,也畢將步向沒落,可喜的是PHP經受住了考驗,也因此,它確實是一種值得學習的語言。默默一直是聽從別人的經驗長大的,也因此在前輩們的經驗裡讓默默少走了許多的彎
Time of Update: 2016-07-15
PHP是一門高效的網路程式設計語言,由於它具有編寫靈活、運行快速等優點,迅速成為Web程式員的慣用語言。前不久的一份權威調查表明,現在已經有31.6%的網站使用PHP作為主要的伺服器端程式設計語言。 但是,要成為一名PHP編程高手卻並不容易。並不像很多人想象的那樣,只要能夠飛快地編寫幾條簡單的代碼去解決一個複雜的問題就是PHP編程高手了,真正的PHP高手還需要考慮更多的其它問題。以下三條準則是一名成熟的PHP程式員在編程中應該首先遵循的準則。 1.懶惰是金 2.編寫漂亮的代碼
Time of Update: 2016-07-15
SSH可以通過將聯機的封包加密的技術進行資料的傳遞;使用SSH可以把傳輸的所有資料進行加密,即使有人截獲到資料也無法得到有用的資訊。同時資料經過壓縮,大大地加快了傳輸的速度。總之,通過SSH的使用,可以確保資料傳輸比較安全並且傳輸效率較高。不過,並非所有人知道PHP可以與SSH串連的特性以及與執行遠程命令的能力,不過這方面卻非常有用。由於我們可以在很多不同的方面利用PHP,因此它有很多設定選項來控制其行為。一組龐大的選擇性參數能夠保證您可以將
Time of Update: 2016-07-15
將PHP和MYSQL合理且有效結合在一起可以製作出精緻的資料庫網站。MYSQL是一種小型的,緊密的資料服務器,支援標準SQL。它在UNIX和WINDOWS環境下都能夠使用。 PHP和MYSQL都是免費的開放源碼。它們的結合可以在WINDOWS中發展,在UNIX中做服務。PHP也支援其他一些資料庫包括PostgreSQL. 下面有一個例子: 首先你已經安裝了PHP及MYSQL. 這個簡單的指令碼例子是從資料庫中讀取資料然後顯示出來。 <html><body><?php $db =
Time of Update: 2016-07-15
Apache整合PHP有兩種方式:一種是DSO模式,把PHP當作Apache的外部模組來調用,這樣增加了Apache的靈活性,但會帶來5%的效能降低;另一種方式是把PHP編譯進Apache的核心,這樣犧牲了以後調整的靈活性(每次對PHP的重新編譯,都需要再次編譯Apache),但效能會高一些。對Perl也是如此。相比之下,本人更願意使用第二種方式,即把PHP編譯進Apache的靜態核心。 一.編譯Apache: 1. 進入Apache展開目錄; 2. ./configure - -prefix=
Time of Update: 2016-07-15
國內不少論壇都存在跨站指令碼漏洞,國外也很多這樣的例子,甚至Google也出現過,不過在12月初時修正了。(編者註:關於跨站指令碼漏洞攻擊,讀者可參閱《詳解XSS跨站指令碼攻擊》)。跨站攻擊很容易就可以構造,而且非常隱蔽,不易被查覺(通常盜取資訊後馬上跳回原頁面)。如何攻擊,在此不作說明(也不要問我),主要談談如何防範。首先,跨站指令碼攻擊都是由於對使用者的輸入沒有進行嚴格的過濾造成的,所以我們必須在所有資料進入我們的網站和資料庫之前把可能的危險攔截。針對非法的HTML程式碼封裝括單雙引號等,可
Time of Update: 2016-07-15
執行個體291:建立PHP 5.0新型字串這是一個字串建立的執行個體執行個體位置:光碟片mingrisoft10291執行個體說明 以往字串的定義方式是將字串用單引號或雙引號括起來進行建立的,在PHP 5.0以後的版本中,出現了一種新型字串的定義方式,本執行個體主要介紹如何建立這種新型字串。運行本執行個體,10.29所示,如果在頁面中列印出“吉林省明日科技”,說明新型字串建立成功。圖10.29 建立PHP 5.0新型字串 技術要點
Time of Update: 2016-07-15
Roger McCoy是使用過包括C、Java、JavaScript、Perl、PHP 和Microsoft Visual Basic 在內的多種程式設計語言的開發人員。他有五年的PHP應用程式開發經驗,但是他作為話務中心行業內的技師可能更著名。讓我們算一算有多少種方法處理諸如 PHP 之類的現代程式設計語言的樂趣之一就是有大量的選項可用。PHP 可以輕鬆地贏得 Perl 的座右銘“There's more than one way to do