Time of Update: 2016-07-21
詞法結構 1. 大小寫 在PHP中,關鍵字、函數名以及類名不區分大小寫,但變數名是區分大小寫。 2. 分號、空格、換行、大括弧 在PHP中,分號表示一個語句的結束。 一般來說,空格和換行在PHP中沒有實際意義,但可以提高代碼的可讀性。 大括弧表示一個語句塊。 3. 注釋 PHP支援多種注釋方式。如Shell注釋方式(以#開頭)、C語言注釋方式(以/*開頭,以*/結尾)、C++語言注釋方式(以//開頭)。如: 12345 # Shell注釋方式 /* C語言注釋方式 */ //
Time of Update: 2016-07-21
類似spl的autoload功能,bloader為php對象的autoload工具,但相比較起來更簡單高效,配置也更靈活. bloader提供一個常用的autoload函數ld,以及兩個輔助函數,ld_new(執行個體化)和ld_unset(銷毀對象). #1 bloader會自動搜尋當前檔案 或 目前的目錄下的.class.php檔案,以及通過'_MODULES'常量定義的路徑,執行個體化類返回對象. #2 可直接使用ld('類名')操作對象(見執行個體 1-1) #3
Time of Update: 2016-07-21
首先,確認伺服器硬體是否足夠支援當前的流量。 普通的P4伺服器一般最多能支援每天10萬獨立IP,如果訪問量比這個還要大, 那麼必須首先配置一台更高效能的專用伺服器才能解決問題 ,否則怎麼最佳化都不可能徹底解決效能問題。 其次,最佳化資料庫訪問。 前台實現完全的靜態化當然最好,可以完全不用訪問資料庫,不過對於頻繁更新的網站, 靜態化往往不能滿足某些功能。 緩衝技術就是另一個解決方案,就是將動態資料儲存到快取檔案中,動態網頁直接調用
Time of Update: 2016-07-21
四種標量類型:boolean (布爾型) integer (整型) float (浮點型, 也稱作 double) string (字串) 兩種複合類型:array (數組) object (對象) 最後是兩種特殊類型:resource (資源) NULL (NULL) 為了確保代碼的易讀性,本手冊還介紹了一些偽類型:mixed number callback 以及偽變數 $....可能還會讀到一些關於“雙精確度(double)”類型的參考。實際上 double 和 float
Time of Update: 2016-07-21
複製代碼 代碼如下: function fetchRoles($user) { if ($this->existsLink($this->rolesField)) { $link =& $this->getLink($this->rolesField); $rolenameField = $link->assocTDG->rolesNameField; } else { $rolenameField = 'rolename'; } if
Time of Update: 2016-07-21
演算法分析: 1316,顯然1300是13的倍數,但16不是11的倍數,可以想到從1300上任意減去N個13的倍數其結果仍然是13的倍數,那麼只要16加上這個減去的N個13的倍數其和是11的倍數,這兩個數就解出來了,答案可能不只一個,但是我們只求一對解就可以了。 仔細觀察不難發現:(16+13*3)+(1300-13*3)=1316,但是我們需要用代碼實現: 複製代碼 代碼如下: $n=1316; $i=0;//減去的第N個13,進行初始化為0
Time of Update: 2016-07-21
Pager 分頁函數 複製代碼 代碼如下: /** * 建構函式 * * 如果 $source 參數是一個 TableDataGateway 對象,則 FLEA_Helper_Pager 會調用 * 該 TDG 對象的 findCount() 和 findAll() 來確定記錄總數並返回記錄集。 * * 如果 $source 參數是一個字串,則假定為 SQL 陳述式。這時,FLEA_Helper_Pager * 不會自動調用計算各項分頁參數。必須通過 setCount()
Time of Update: 2016-07-21
PHP 版: 複製代碼 代碼如下: function format($size) { $sizetext = array(" B", " KB", " MB", " GB", " TB", " PB", " EB", " ZB", " YB"); return round($size/pow(1024,($i=floor(log($size,1024)))),2).$sizetext[$i]; } C# 版: 複製代碼 代碼如下: public string formatSize(long
Time of Update: 2016-07-21
複製代碼 代碼如下: /** * Data Access Objects(Data Access Object) 樣本 * * @create_date: 2010-01-04 */ class BaseDAO { var $_db = null; var $_table = null; function BaseDAO($config) { $this->_db = new MysqlDB(); // 這裡的不能進行操作 } /** * 擷取處理 * * @param array
Time of Update: 2016-07-21
看PHP手冊的時候發現了下面這樣一段代碼: 複製代碼 代碼如下: function Test() { static $count = 0; $count++; echo $count; if ($count Test(); } $count--; } ?> 執行結果如下: 這是一個遞迴的函數,聲明的靜態變數count記錄次數,輸出1~10。 我在看的時候有個疑惑,遞迴調用的時候 static $count = 0;
Time of Update: 2016-07-21
主要主題是 .php字串中的變數擴充系統 .php中可用的更多資料類型 .類型之間的轉換 .輸入和使用變數和常量 .如何在php中構建運算式以及構建運算式所需的操作符 .使用語言中可用的控制結構 .1 輸入字串的更多介紹 複製代碼 代碼如下: $hour = 16; $kilometres = 4; $content = "cookie"; echo " 4pm in 24 hour time is {$hour}00 hours.\n"; echo There are
Time of Update: 2016-07-21
先看一下代碼 複製代碼 代碼如下: function deldir($dir) { //先刪除目錄下的檔案: $dh=opendir($dir); while ($file=readdir($dh)) { if($file!="." && $file!="..") { $fullpath=$dir."/".$file; if(!is_dir($fullpath)) { unlink($fullpath); } else { deldir($fullpath); } } }
Time of Update: 2016-07-21
先明確我所指的PHP工程題,是指畢業工作後,主要以PHP進行WEB系統的開發,沒有使用其的語言工作過。工作經驗大概在3~4年,普通的WEB系統(百萬級訪問,千成級資料以內或商務邏輯不是特別複雜)開發起基本得心應手,沒有什麼問題。但他們會這樣的物點: 除了PHP不使用其它的語言,可能會點shell 指令碼。 對PHP的掌握不精(很多PHP手冊都沒有看完,庫除外) 知識面比較窄(面對需求,除開使用PHP和mysql ,不知道其它的解決辦法) PHP代碼以過程為主,認為物件導向的實現太繞,看不懂
Time of Update: 2016-07-21
複製代碼 代碼如下: $zongzi = "asdfasdf(asdfasdf?asfdadsf)"; echo $zongzi = quotemeta($zongzi); echo ""; $zongzi = stripslashes($zongzi); echo $zongzi; ?> PHP quotemeta() 函數 定義和用法 quotemeta() 函數在字串中某些預定義的字元前添加反斜線。 這些預定義字元是: 句號 (.) 反斜線 (\) 加號 (+) 星號 (*) 問號 (?)
Time of Update: 2016-07-21
所以,把第一章,可重用類的代碼貼出來,便於以後查閱以及供給有需要的朋友。 :User類,包括讀取和設定資料庫,以及儲存更改互動 複製代碼 代碼如下: class User{ private $uid; private $fields; public function __construct(){ $this->uid=null; $this->fields=array('username'=>'','password'=>'','emailAddr'=>'','isActive'=>false)
Time of Update: 2016-07-21
foreach()有兩種用法: 複製代碼 代碼如下: foreach(array_name as $value) { statement; } 這裡的array_name是你要遍曆的數組名,每次迴圈中,array_name數組的當前元素的值被賦給$value,並且數組內部的下標向下移一 步,也就是下次迴圈回得到下一個元素。 複製代碼 代碼如下: foreach(array_name as $key => $value) { statement; } 這裡跟第一種方法的區別就是多了個$key,
Time of Update: 2016-07-21
一.字串插入 為了給開發人員處理字串值提供最大的靈活性,PHP 為字面插入和內容插入提供了 一種方法。 雙引號提供了最大的靈活性,原因是變數和轉移序列都會得到相應的解析。 複製代碼 代碼如下:$userName = "張三"; echo "His name is $userName "; echo ""; //中文會出現一些問題 echo "他的名字叫$userName ,他19歲了,已經長大成人了!"; echo ""; //可以採用字串串連的方式解決 echo
Time of Update: 2016-07-21
下面一段代碼是建立相應資料庫的sql代碼:複製代碼 代碼如下: ////////////// //////無限分類的資料庫設計及範例 ////////////// mysql> create database db_kind; Query OK, 1 row affected mysql> use db_kind; Database changed mysql> create table tb_kind( -> id int not null
Time of Update: 2016-07-21
一,PHP指令碼代碼標記 PHP的指令碼是檔案中一對特殊標記所包括的內容,如ASP是“”,PHP可看成是“”。 然而為了適應XML標準以將PHP嵌入到XML或XHTML中,PHP不建議使用短格式的“”,而建議使用長格式標記“” 此外PHP代碼塊還支援 的標記形式。 二,PHP指令分隔字元 PHP的每條語句需要由分號“;”隔開,但對於PHP結束標記“?>”來說,因其自動隱含一個分號,所以不需要追加分號。 所以,一個PHP指令碼的格式可如下: 三,PHP的注釋 PHP多行注釋使用 “/* .....
Time of Update: 2016-07-21
首先介紹一下所涉及的資料表結構,四個欄位: 代碼如下: 複製代碼 代碼如下: uid :使用者id session_id :使用者登入後系統產生的session_id,PHP可是使用session_id()函數擷取 login_time :登入時間 logout_time :登出時間