Time of Update: 2016-07-15
在PHP編程早期,PHP 代碼在本質上是限於面向過程的。過程代碼的特徵在於使用過程構建應用程式塊。過程通過允許過程之間的調用提供某種程度的重用。但是,沒有物件導向的語言構造,程式員仍然可以把 OO 特性引入到 PHP 代碼中。這樣做有點困難並且會使代碼難於閱讀,因為它是混合範例(含有偽 OO 設計的過程語言)。使用 PHP 代碼中的OO構造 — 例如能夠定義和使用類、能夠構建使用繼承的類之間的關係以及能夠定義介面 — 可以更輕鬆地構建符合優秀 OO
Time of Update: 2016-07-15
MVC模式在網站架構中十分常見。它允許我們建立一個三層結構的應用程式,從代碼中分離出有用的層,協助設計師和開發人員協同工作以及提高我們維護和擴充既有程式的能力。視圖(View)“視圖”主要指我們送到Web瀏覽器的最終結果??比如我們的指令碼產生的HTML。當說到視圖時,很多人想到的是模版,但是把模板方案叫做視圖的正確性是值得懷疑的。對視圖來說,最重要的事情可能是它應該是“自我意識(self
Time of Update: 2016-07-15
PHP字串函數庫,收集了51個PHP處理字串的函數。PHP字串函數庫,收集了51個PHP處理字串的函數。包括,計算字串長度、分割字串、尋找字串等等各個方面。AddSlashes: 字串加入斜線。 bin2hex: 二進位轉成十六進位。 Chop: 去除連續空白。 Chr: 返回序數值的字元。 chunk_split:
Time of Update: 2016-07-15
PHP5的訪問方式允許限制對類成員的訪問. 這是在PHP5中新增的功能,但在許多物件導向語言中都早已存在. 有了訪問方式,才能開發一個可靠的物件導向應用程式,並且構建可重用的物件導向類庫.像C++和Java一樣,PHP有三種訪問方式:public,private和protected. 對於一個類成員的訪問方式,可以是其中之一. 如果你沒有指明訪問方式,預設地訪問方式為public. 你也可以為靜態成員指明一種訪問方式,將訪問方式放在static關鍵字之前(如public
Time of Update: 2016-07-15
Ruby on
Time of Update: 2016-07-15
在Sun Microsystems於1995年發表Java之後,由於Java的友善介面讓工程師設計軟體更為容易,受到工程師歡迎,但十年下來Java陸陸續續被加入了強大的功能,反而使它變得不容易操作。Marc
Time of Update: 2016-07-15
何為Regex?幾年前,我對 Web 表單的輸入框做了一些有趣的檢驗。使用者將在此表單中輸入電話號碼。隨後,此電話號碼會按使用者鍵入的形式列印在使用者的廣告中。按照要求,美國的電話號碼可以幾種方式輸入:可以是 (555) 555-5555,也可以是 555-555-5555,但不能接受 555-5555 這樣的形式。您或許會感到奇怪,為什麼我們不拋開所有的非數字字元,只保證剩餘的字元總數為 10 呢?這種方法確實可行,但無法阻止使用者輸入 !555?333-3333 這樣的內容。以一名 Web
Time of Update: 2016-07-15
當你聲明一個類,你需要列出對象應有的所有變數和所有函數?被稱為屬性和方法圖1中顯示了一個類的構成. 注意在大括弧({})內你只能聲明變數或者函數. 圖2中顯示了如何在一個類中定義三個屬性和兩個方法.class Name extends Another Class { Access Variable Declaration Access Function Declaration } 圖1name = $name; $this->password =
Time of Update: 2016-07-15
序列化可以把變數包括對象,轉化成連續bytes資料. 你可以將序列化後的變數存在一個檔案裡或在網路上傳輸. 然後再反序列化還原為原來的資料. 你在反序列化類的對象之前定義的類,PHP可以成功地儲存其對象的屬性和方法. 有時你可能需要一個對象在反序列化後立即執行. 為了這樣的目的,PHP會自動尋找__sleep和__wakeup方法.當一個對象被序列化,PHP會調用__sleep方法(如果存在的話). 在反序列化一個對象後,PHP 會調用__wakeup方法. 這兩個方法都不接受參數.
Time of Update: 2016-07-15
訪問屬性和方法一個對象執行個體的屬性是變數,就像PHP的其他變數一樣. 但是你必須使用->運算子來引用它們. 不需要在屬性前使用美元符$. 可以聯用->,如果一個對象的屬性包含了一個對象,你可以使用兩個->運算子來得到內部對象的屬性. 你甚至可以用雙重引用的字串來放置這些運算式. 存取方法和訪問屬性類似. ->運算子用來指向執行個體的方法. 方法執行起來和類外的函數幾乎相同.如果一個類從另一類中繼承而來,父類中的屬性和方法將在子類中都有效,即使在子類中沒有聲明.
Time of Update: 2016-07-15
【php100獨家特稿】各位使用者如果單獨看NetBeans和Eclipse的市場佔有率,你可能會認為使用其中任何一種IDE開發PHP應用程式都沒有 問題,例如:1、NetBeans:一款開源的整合式開發環境,利用它可以建立案頭、企業級、Web和行動裝置應用程式,支援Java, C/C++,甚至動態指令碼語言PHP,JavaScript,Groovy和Ruby。NetBeans IDE安裝簡單,具有開箱即用的特性,可以再多 個作業系統上運行,如Windows,Linux,Mac OS
Time of Update: 2016-07-15
在這一章內我們會學習到如何在一個Web頁面中向資料庫中儲存資訊並顯示它。之前我們已經安裝了MySQL這個關係型資料庫引擎以及PHP這個伺服器端指令碼語言,並學習了有關它們的基本知識。在學完這一章後,我們將明白如何綜合利用這兩個新的工具來構建一個資料庫驅動的網站!回顧在我們往下繼續之前,回顧一下我們學習的目的應該是件有價值的事。現在有我們的系統中有了兩個強有力的新的工具:指令碼語言PHP和資料庫引擎MySQL。搞清楚兩者是如果協同工作是很重要的。資料庫驅動的網站的實質就是允許網站的內容存在於一個資
Time of Update: 2016-07-15
PHP 的真正威力源自於它的函數。在 PHP 中,提供了超過 700 個內建的函數。PHP 函數在本教程中,我們將為您講解如何建立自己的函數。建立 PHP 函數函數是一種可以在任何被需要的時候執行的代碼塊。建立 PHP 函數:所有的函數都使用關鍵詞 "function()" 來開始 命名函數 - 函數的名稱應該提示出它的功能。函數名稱以字母或底線開頭。 添加 "{" - 開口的花括弧之後的部分是函數的代碼。插入函數代碼 添加一個 "}" -
Time of Update: 2016-07-15
運算子優先順序運算子優先順序指定了兩個運算式綁定得有多“緊密”。例如,運算式 1 + 5 * 3 的結果是 16 而不是 18 是因為乘號(“*”)的優先順序比加號(“+”)高。必要時可以用括弧來強制改變優先順序。例如:(1 + 5) * 3 的值為 18。 下表從低到高列出了運算子的優先順序。 運算子優先順序結合方向運算子左,左or左xor左and右print右= += -= *= /= .= %= &= |= ^= ~= >= 左? :左||左&&左|左^左&無== != === !==無
Time of Update: 2016-07-15
PHP4中已經有了重載的文法來建立對於外部物件模型的映射,就像Java和COM那樣. PHP5帶來了強大的物件導向重載,允許程式員建立自訂的行為來訪問屬性和調用方法.重載可以通過__get, __set, and __call幾個特殊方法來進行. 當Zend引擎試圖訪問一個成員並沒有找到時,PHP將會調用這些方法.在例圖1中,__get和__set代替所有對屬性變數數組的訪問. 如果必要,你可以實現任何類型你想要的過濾. 例如,指令碼可以禁止設定屬性值, 在開始時用一定的首碼或包含一定類型的值.
Time of Update: 2016-07-15
If、elseif 以及 else 語句用於執行基於不同條件的不同動作。條件陳述式當您編寫代碼時,您常常需要為不同的判斷執行不同的動作。您可以在代碼中使用條件陳述式來完成此任務。if...else 語句 在條件成立時執行一塊代碼,條件不成立時執行另一塊代碼elseif 語句與 if...else 配合使用,在若干條件之一成立時執行一個代碼塊 If...Else 語句如果您希望在某個條件成立時執行一些代碼,在條件不成立時執行另一些代碼,請使用 if....else 語句。文法if
Time of Update: 2016-07-15
瞭解Regex之前,需要掌握一些常用的Regex的基礎知識,這些如果能記住最好記住,記不住需要用的時候能查到就行,就幾個特殊字元,所以說Regex玩的就是特殊,具體大家可以查看更加詳細的說明。preg_match_all函數具體說明大家可以查看PHP手冊,本文使用preg_match_all用於測試正則表達的效果。執行個體代碼:$html = 'php100php1002php1003';執行個體要求:分別將每一個DIV元素的ID和內容取出,如biuuu,biuuu_2,biuuu_3,php1
Time of Update: 2016-07-15
通過把Content-Type設定為application/octet-stream,可以把動態產生的內容當作檔案來下載,相信這個大家都會。那麼用Content-Disposition設定下載的檔案名稱,這個也有不少人知道吧。基本上,下載程式都是這麼寫的: header('Content-Disposition: attachment; filename=' . $filename);print "Hello!";?> 這樣用瀏覽器開啟之後,就可以下載document.txt。
Time of Update: 2016-07-15
PHP是一個很容易學習的語言, 許多人在沒有任何編程背景下學習它作為一種去增加一些互動元素到他們的網站的方法. 不幸的是,這往往意味著PHP程式員,尤其是那些較新的Web開發程式員, 並沒有覺察他們網站中潛在安全風險. 這裡是一些比較常見的安全問題,以及如何去避免它們。永遠,永遠信任你的使用者不能說足夠的次數,你應該永遠,永遠, 信任你的使用者向你發送你期望的資料. 我聽到很多人回應,大概是"哦,沒有惡意的人將對我的網站感興趣"。這就錯了,
Time of Update: 2016-07-15
我在SitePoint做面試官的時候一定會問的問題是:你認為PHP代碼的優劣體現在哪裡?因為這個問題可以讓我大體知道應聘者是哪種類型的程式員,而不是單純地考察他對PHP函數的掌握程度(這一點Zend的PHP認證做得不錯,雅虎的PHP程式員面試題也屬於此類)。重要的是,這個問題可以讓我知道應聘者是否經曆過這樣的事情——從一個懶散程式員手中接過一段淩亂的代碼進行重用,或者要協助團隊中的其他成員來處理這類事情。誠然,對於這個問題我自己也沒有一個滿意的答案,不過我知道哪些答案是我想聽到的:優秀的PHP代