Time of Update: 2017-01-19
例如,員工管理應用程式可能包括一個EmPloyee 類。然後可以用這個類來建立和維護特定執行個體,比如Gonn和Sally。 根據預定義的類建立對象常稱為類的執行個體化(class instantiation)。 對象使用new關鍵字建立,如下: 複製代碼 代碼如下: $employee = new Employee(); 建立對象之後,這個剛執行個體化的對象就具有了類中定義的所有性質和行為。 如何執行個體化對象
Time of Update: 2017-01-19
例如,一個交通工具可以定義有顏色、輪胎數、製造商、型號和容量等性質,並定義有停止、前進、轉彎和鳴笛等行為。在OOP術語中,實體的性質和行為的具體定義稱為類(class)。 類的定義與建立 類是具有相同屬性和服務的一組對象的集合。它為屬於該類的所有對象提供了統一的抽象描述,其內部包括屬性和方法兩個主要部分。在物件導向的程式設計語言中,類是一個獨立的程式單位,它應該有一個類名並包括屬性說明和方法說明兩個主要部分。 類用於表示要在應用程式中處理的實際事物。例如,假設要建立一個管理公用圖書館的應用程式,
Time of Update: 2017-01-19
但是, 這樣做, 就沒辦法做一些統計, 許可權檢查, 等等的工作. 於是, 很多時候, 我們採用讓PHP來做轉寄, 為使用者提供檔案下載. 複製代碼 代碼如下: <?php $file = "/tmp/dummy.tar.gz"; header("Content-type: application/octet-stream"); header('Content-Disposition: attachment; filename="' . basename($file) . '"');
Time of Update: 2017-01-19
經常會有人問我, PHP的數組, 如果用foreach來訪問, 遍曆的順序是固定的麼? 以什麼順序遍曆呢? 比如: 複製代碼 代碼如下: <?php $arr['laruence'] = 'huixinchen'; $arr['yahoo'] = 2007; $arr['baidu'] = 2008; foreach ($arr as $key => $val) { //結果是什麼? } 又比如: 複製代碼 代碼如下: <?php $arr[2] = 'huixinchen'
Time of Update: 2017-01-19
總結: 使用PHP下載檔案的操作需要給出四個header(),可以參考我的另一篇博文:PHP如何?下載功能超詳細流程分析 計算檔案的大小的時候,並不需要先開啟檔案,通過filesize($filename)就可以看出,如果需要先開啟檔案的話,filesize可能就會是這樣的形式了filesize($filehandle)
Time of Update: 2017-01-19
用戶端從服務端下載檔案的流程分析: 瀏覽器發送一個請求,請求訪問伺服器中的某個網頁(如:down.php),該網頁的代碼如下。 伺服器接受到該請求以後,馬上運行該down.php檔案 運行該檔案的時候,必然要把將要被下載的檔案讀入記憶體當中(這裡是聖誕狂歡.jpg這張圖片),這裡通過fopen()函數完成該動作 注意:任何有關從伺服器下載的檔案操作,必然需要先在服務端將檔案讀入記憶體當中 現在檔案已經在記憶體當中了,這是需要從記憶體當中讀取檔案,通過fread()函數完成該動作
Time of Update: 2017-01-19
定義頂級異常處理器用到的函數是 set_exception_handler("My_exception"); 這裡的My_expection是開發人員自訂的異常處理函數,既頂級異常處理器,只有當程式中沒有函數來處理異常才有頂級異常處理器來處理異常,如果沒有定義頂級異常處理器,則由系統預設的異常處理器來處理異常 舉例說明: 複製代碼 代碼如下: <meta http-equiv="content-type" content="text/html;charset=utf-8"
Time of Update: 2017-01-19
1、首先php5提供了基本的異常處理類,可直接使用 複製代碼 代碼如下: <?php class Exception { protected $message = 'Unknown exception'; // 異常資訊 protected $code = 0; // 使用者自訂異常代碼 protected $file; // 發生異常的檔案名稱 protected $line; // 發生異常的程式碼號 function __construct($message = null,
Time of Update: 2017-01-19
在自然語言中,我們理解抽象的概念是,一個物體的一種大的描述,這種描述對某類物體來說是共有的特性。那麼在PHP中也是一樣的,我們把一個類進行抽象,可以指明類的一般行為,這個類應該是一個模板,它指示它的子方法必須要實現的一些行為。 PHP抽象類別應用的定義: abstract class ClassName{ } PHP抽象類別應用要點: 1.定義一些方法,子類必須完全實現這個抽象中所有的方法 2.不能從抽象類別建立對象,它的意義在於被擴充
Time of Update: 2017-01-19
1、與mysql相關 mysql_connect 建立一個與MySQL伺服器的串連 文法 resource mysql_connect(string server[,string usingname[,string password[, bool new_link[,int client_flags]]]]) eg: 複製代碼 代碼如下: $DB_HOST ="localhost"; $DB_LOGIN ="root"; $DB_PASSWORD =" 123456"; $conn=mysql_
Time of Update: 2017-01-19
例如: SQL注入攻擊 XSS攻擊 複製代碼 代碼如下: 任意執行代碼 檔案包含以及CSRF. } 關於SQL攻擊有很多文章還有各種防注入指令碼,但是都不能解決SQL注入的根本問題 見代碼: 複製代碼 代碼如下: <?php mysql_connect("localhost","root","123456")or die("資料庫連接失敗!"); mysql_select_db("test1"); $user=$_post['uid']; $pwd=$_POST['pass']; if(
Time of Update: 2017-01-19
複製代碼 代碼如下: <?php /** * 逆序二維數組插入一元素 * * @author WadeYu * @date 2012-05-30 */ $aSorted = array( array(1, 100), array(2, 90), array(3, 80), array(4, 70), array(5, 60), array(6, 50), array(7, 40), array(8, 40), array(9, 40), array(10, 20), );
Time of Update: 2017-01-19
複製代碼 代碼如下: <?php /** * PHP 年齡計算函數 * * 參數支援數組傳參和標準的 Mysql date 類型傳參 * params sample * -------------------------------------------------- $birthArr = array( 'year' => '2000', 'month' => '11', 'day' => '3' ); $birthStr = '2000-11-03'; * ----
Time of Update: 2017-01-19
複製代碼 代碼如下: /** * 序號產生器 */ function snMaker($pre = '') { $date = date('Ymd'); $rand = rand(1000000,9999999); $time = mb_substr(time(), 5, 5, 'utf-8'); $serialNumber = $pre.$date.$time.$rand; // echo strlen($serialNumber).'<br />'; return
Time of Update: 2017-01-19
一、strstr — 尋找字串的首次出現 string strstr ( string $haystack , mixed $needle [, bool $before_needle = false ] ) 注1:$haystack是當事字串,$needle是被尋找的字串。該函數區分大小寫。 注2:傳回值是從needle開始到最後。 注3:關於$needle,如果不是字串,被當作整形來作為字元的序號來使用。 注4:before_needle若為true,則返回前東西。 複製代碼 代碼如下: &
Time of Update: 2017-01-19
先google了一下,發現很多問相關問題的但沒有相關的解答,在phpclasses裡也沒有找到相關的類於是自己邊看stmp的相關協議邊開始嘗試curl SMTP協議 這個在網上可以找到多相關的例子,可以自己實驗一下使用telnet去串連mail伺服器 複製代碼 代碼如下: $ telnet 郵箱SMTP服務地址 25 Trying 郵箱服務IP地址... Connected to 郵箱SMTP服務地址. Escape character is '^]'. exchange郵箱伺服器位址
Time of Update: 2017-01-19
這幾天寫php程式,感覺很多地方不如asp,asp.Net,jsp順手,比如session使用先得session_start();,檔案跳轉header用的也不方便.... 也許是不熟悉的php的一些特性吧,不過寫多了,也就慢慢適應將就了..... 這裡就整理一個代碼編寫調試問題,錯誤如下: Parse error: syntax error, unexpected $end in D:\xampp\htdocs\guestBook\guestBook.php on line 330 看看程式
Time of Update: 2017-01-19
首先需要的檔案有jquery.js,jquery.autocomplete.js,jquery.autocomplete.js,這三個檔案,哪裡有?百度、Google都可以找到。可以去官網上下,裡麵包含了一些demo,只留下這三個檔案即可。 js代碼: 複製代碼 代碼如下: <SCRIPT language=javascript src="../../js/jquery.js" type=text/javascript> </SCRIPT><SCRIPT
Time of Update: 2017-01-19
複製代碼 代碼如下: <?php //變數注意區分數字 "0" 和 字元"O" $OOO000000=urldecode('%66%67%36%73%62%65%68%70%72%61%34%63%6f%5f%74%6e%64'); // 解碼已編碼的 URL 字串, 解碼結果是 fg6sbehpra4co_tnd $OOO0000O0=$OOO000000{4}.$OOO000000{9}.$OOO000000{3}.$OOO000000{5}; //然後把 解碼後的字元分別 取得 4,
Time of Update: 2017-01-19
欄位是用於描述類的麼個方面的性質。 欄位是用於描述類的某個方面的性質。它與一般的PHP 變數非常相似,只是有一些細微的差別,本節將介紹這些差別。這一節還將討論如何聲明和使用欄位,下一節則介紹如何使用欄位的範圍來進行訪問限制。 聲明欄位 欄位聲明的有關規則與變數聲明的規則非常類似;實際上,可以說沒有區別。因為PHP 是鬆散類型的語言,欄位甚至不需要聲明;可以由類對象同時建立和賦值,但很少會這樣做。相反,常見的做法是在類開始處聲明欄位。此時可以為欄位賦初值。樣本如下: 複製代碼 代碼如下: