Time of Update: 2018-12-08
php表單在提交之後再後退,表單的內容預設是被清空的(使用session_start的時候), 解決方案是在session_start() 之後,字元輸出之前寫上 複製代碼 代碼如下:header("Cache-control: private"); 網頁的緩衝是由HTTP訊息頭中的“Cache-control”來控制的,常見的取值有private、no- cache、max-age、must-revalidate等,預設為private。其作用根據不同的重新瀏覽方式分為以下幾種情況: (1)
Time of Update: 2018-12-08
複製代碼 代碼如下:<?php $arr = array('a','b','c','d'); unset($arr[1]); print_r($arr); ?> print_r($arr)之後,結果卻不是那樣的,最終結果是 Array ( [0] => a [2] => c [3] => d 那麼怎麼才能做到缺少的元素會被填補並且數組會被重新索引呢?答案是array_splice(): 複製代碼 代碼如下:<?php $arr = array('a','b',
Time of Update: 2018-12-08
介面在php只能起到約束類的定義作用,雖不像c#/java那麼直觀,但基於oop的封裝要求,使用介面可以提高程式的可擴充性,如實現代理設計模式。 複製代碼 代碼如下:<?php //人類介面 interface IHuman { function GetName(); } //男人類,實現人類介面 class ManClass implements IHuman { //擷取姓名方法 public function GetName() { return "I'm
Time of Update: 2018-12-08
今天在家啟動PHP環境的時候,突然發現不能載入php_mysqli.dll了,網上找了一圈,沒有解決方案! 在群裡面受一哥們兒的啟發,竟然解決了,如果你的問題還沒有解決,請按下面的方法試試! apache下比如我的apache裝在D盤,目錄是D:/severs/apache PHP的目錄是D:/servers/php5 這樣,把D:/servers/php5/libmysql.dll拷貝到D:/servers/apache/bin這個目錄下面
Time of Update: 2018-12-08
首先需要的檔案有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: 2018-12-08
欄位是用於描述類的麼個方面的性質。 欄位是用於描述類的某個方面的性質。它與一般的PHP 變數非常相似,只是有一些細微的差別,本節將介紹這些差別。這一節還將討論如何聲明和使用欄位,下一節則介紹如何使用欄位的範圍來進行訪問限制。 聲明欄位 欄位聲明的有關規則與變數聲明的規則非常類似;實際上,可以說沒有區別。因為PHP 是鬆散類型的語言,欄位甚至不需要聲明;可以由類對象同時建立和賦值,但很少會這樣做。相反,常見的做法是在類開始處聲明欄位。此時可以為欄位賦初值。樣本如下: 複製代碼
Time of Update: 2018-12-08
1、首先php5提供了基本的異常處理類,可直接使用 複製代碼 代碼如下:<?php class Exception { protected $message = 'Unknown exception'; // 異常資訊 protected $code = 0; // 使用者自訂異常代碼 protected $file; // 發生異常的檔案名稱 protected $line; // 發生異常的程式碼號 function __construct($message = null,
Time of Update: 2018-12-08
例如,員工管理應用程式可能包括一個EmPloyee 類。然後可以用這個類來建立和維護特定執行個體,比如Gonn和Sally。 根據預定義的類建立對象常稱為類的執行個體化(class instantiation)。 對象使用new關鍵字建立,如下: 複製代碼 代碼如下: $employee = new Employee(); 建立對象之後,這個剛執行個體化的對象就具有了類中定義的所有性質和行為。 如何執行個體化對象
Time of Update: 2018-12-08
複製代碼 代碼如下:<?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: 2018-12-08
例如,一個交通工具可以定義有顏色、輪胎數、製造商、型號和容量等性質,並定義有停止、前進、轉彎和鳴笛等行為。在OOP術語中,實體的性質和行為的具體定義稱為類(class)。 類的定義與建立 類是具有相同屬性和服務的一組對象的集合。它為屬於該類的所有對象提供了統一的抽象描述,其內部包括屬性和方法兩個主要部分。在物件導向的程式設計語言中,類是一個獨立的程式單位,它應該有一個類名並包括屬性說明和方法說明兩個主要部分。 類用於表示要在應用程式中處理的實際事物。例如,假設要建立一個管理公用圖書館的應用程式,
Time of Update: 2018-12-08
但是, 這樣做, 就沒辦法做一些統計, 許可權檢查, 等等的工作. 於是, 很多時候, 我們採用讓PHP來做轉寄, 為使用者提供檔案下載. 複製代碼 代碼如下:<?php $file = "/tmp/dummy.tar.gz"; header("Content-type: application/octet-stream"); header('Content-Disposition: attachment; filename="' . basename($file) . '"');
Time of Update: 2018-12-08
但是有個問題 雖然JS解碼JSON非常方便,但是編碼似乎沒有什麼好辦法… 本著能懶即懶,不能懶也盡量懶的原則,古狗了一下 還真讓我發現了 PHP裡直接用json_decode就可以解碼,用起來相當方便 複製代碼 代碼如下:function json_encode_js(aaa){ function je(str){ var a=[],i=0; var pcs="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
Time of Update: 2018-12-08
經常會有人問我, PHP的數組, 如果用foreach來訪問, 遍曆的順序是固定的麼? 以什麼順序遍曆呢? 比如: 複製代碼 代碼如下:<?php $arr['laruence'] = 'huixinchen'; $arr['yahoo'] = 2007; $arr['baidu'] = 2008; foreach ($arr as $key => $val) { //結果是什麼? } 又比如: 複製代碼 代碼如下:<?php $arr[2] = 'huixinchen'; $
Time of Update: 2018-12-08
複製代碼 代碼如下:<?php /** * PHP 年齡計算函數 * * 參數支援數組傳參和標準的 Mysql date 類型傳參 * params sample * -------------------------------------------------- $birthArr = array( 'year' => '2000', 'month' => '11', 'day' => '3' ); $birthStr = '2000-11-03'; * -----
Time of Update: 2018-12-08
複製代碼 代碼如下:<?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), ); $aInsert
Time of Update: 2018-12-08
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";
Time of Update: 2018-12-08
總結: 使用PHP下載檔案的操作需要給出四個header(),可以參考我的另一篇博文:PHP如何?下載功能超詳細流程分析 計算檔案的大小的時候,並不需要先開啟檔案,通過filesize($filename)就可以看出,如果需要先開啟檔案的話,filesize可能就會是這樣的形式了filesize($filehandle)
Time of Update: 2018-12-08
演算法思路:把每一個數字看做一個獨立的數學運算式,運算式之間加上標點符號組合成新運算式,一共組合4次,運算式之間的所有組合可以通過遞迴來實現. 代碼如下: 複製代碼 代碼如下:<?php /** * A 24 maker * @version 1.0.0 * @author laruence<laruence at yahoo.com.cn> * @copyright (c) 2009 http://www.laruence.com */ class
Time of Update: 2018-12-08
用戶端從服務端下載檔案的流程分析: 瀏覽器發送一個請求,請求訪問伺服器中的某個網頁(如:down.php),該網頁的代碼如下。 伺服器接受到該請求以後,馬上運行該down.php檔案 運行該檔案的時候,必然要把將要被下載的檔案讀入記憶體當中(這裡是聖誕狂歡.jpg這張圖片),這裡通過fopen()函數完成該動作 注意:任何有關從伺服器下載的檔案操作,必然需要先在服務端將檔案讀入記憶體當中 現在檔案已經在記憶體當中了,這是需要從記憶體當中讀取檔案,通過fread()函數完成該動作
Time of Update: 2018-12-08
例如: SQL注入攻擊 XSS攻擊 複製代碼 代碼如下:任意執行代碼 檔案包含以及CSRF. } 關於SQL攻擊有很多文章還有各種防注入指令碼,但是都不能解決SQL注入的根本問題 見代碼: 複製代碼 代碼如下:<?php mysql_connect("localhost","root","123456")or die("資料庫連接失敗!"); mysql_select_db("test1"); $user=$_post['uid']; $pwd=$_POST['pass'];