Time of Update: 2016-07-29
但是PHP反編譯系統的出現卻迅速引起了Zend公司甚至整個PHP使用者群的恐慌,包括上述產品在內的幾乎所有大型PHP產品全部出現了破解版本甚至出現了完整的原始碼。如此一來,Zend不得不向Cracker們低頭,承認所有的加密技術都有破解的辦法,並承諾對加密產品進行改進以便提供更強的保護。 PHP加密技術可以追溯到01年,當時PHP已經很火爆,所以許多公司希望能推出商業化的PHP系統,於是PHP加密(編譯)產品應運而生,隨後PHP大顎Zend公司推出了自己的Zend
Time of Update: 2016-07-29
因為在本地測試完全沒有問題,所以ssh到遠程伺服器上(不是發行伺服器,建議不要直接在Publish Server上直接改東西),進行了一下斷點的測試,最後發現是一個比較複雜的邏輯中有個函數在建構函式中調用了登陸驗證。沒有驗證通過所以就跳走了。 下面我們通過程式來看一下php cookie的使用,也許你看完上面那段還納悶,這個和cookie有什麼聯絡呢? 大體說一下在我們的MVC結構中所用的登陸驗證:
Time of Update: 2016-07-29
本控制項可以對GridView,Repeater,DataGrid,DataList...幾乎所有的.net資料繫結控制項進行分頁,全部無重新整理,資料繫結部分可以使用預存程序也可以直接使用sql語句,這對本控制項沒有任何幹擾!本控制項具有較好的使用者介面,能夠根據需要變換各種樣式,配合css控制效果則更好! 1.分頁樣式: 2.如何使用:於bin目錄下添加:AspNetAjaxPager.dll引用 aspx檔案內容: 複製代碼 代碼如下: //======================
Time of Update: 2016-07-29
模板檔案template.htm: 複製代碼 代碼如下: %title% %title% %body% php檔案:複製代碼 代碼如下://Replace函數用於將從模版檔案中讀取的內容中的關鍵字替換成變數中的內容 function Replace($row) { //定義用來替換的變數 $title = "文章標題"; $body = "這裡是文章主體"; //替換參數中的關鍵字 $row = str_replace("%title%", $title, $row); $row =
Time of Update: 2016-07-29
複製代碼 代碼如下:include("adodb/adodb.inc.php"); //包含adodb類庫檔案 include("adodb/adodb-pager.inc.php"); //包含adodb-pager類庫檔案 $conn = NewADOConnection('mysql'); //建立adodb對象,聲明資料庫類型為MySQL $conn->Connect("localhost", "root", "1981427", "test");
Time of Update: 2016-07-29
前提是要在這裡:http://sourceforge.net/project/showfiles.php?group_id=42718&package_id=220409&release_id=649609複製代碼 代碼如下:include("adodb/adodb.inc.php"); //包含adodb類庫檔案 $conn = NewADOConnection('mysql'); //建立資料庫連接對象 $conn -> debug =true; $conn ->
Time of Update: 2016-07-29
雖然 PHP 是建構 Web 系統強有力的工具,但是 PHP 存取資料庫的功能,一直未能標準化,每一種資料庫,都使用另一種不同且不相容的應用程式介面(API)。為了填補這個缺憾,因此才有 ADODB 的出現。一旦存取資料庫的介面予以標準化,就能隱藏各種資料庫的差異,若欲轉換至其它不同的資料庫,將變得十分容易。 目前 ADODB最新版本是V4.62,支援的資料庫種類非常地多,例如:MySQL, PostgreSQL, Interbase, Informix, Oracle, MS SQL 7,
Time of Update: 2016-07-29
XML解析錯誤:xml處理指示不在實體的開始部分 位置:http://.../public/xml/get 行:2,列:1: ^ 仔細檢查後發現是首行為空白。找了很久沒有找到到底 zend 的 view 在哪兒輸出了空行,包括初始化一個新的 View ,但是始終沒有找到原因,但是網站首頁的首行是沒有空的。 網上也有類似的例子,但是他們解決的方法是注意控制輸出,但是我不知道 View 怎麼控制輸出。 弄了半天也沒成功,我都快崩潰了,我決定放棄這種方法,而先將 xml
Time of Update: 2016-07-29
複製代碼 代碼如下:$array = array("key1" => "Simon", 2 => "Elaine"); //數組的建立 echo $array["key1"]; //輸出Simon echo $array[2]; //輸出Elaine ?>複製代碼 代碼如下:$array = array("key1" => array(0 => 1, 1 => 10, 2 => 100), "key2" => array(0 => 5, 1 => 25, 2 => 125)); echo
Time of Update: 2016-07-29
背景MAMP是Mac下的一個PHP+Nginx+MySQL的Integration Environment,支援多網站,不同版本PHP。 今天有人請教MAMP如何顯示檔案清單的問題,這裡記錄一下。知識補充一個網站為了安全考慮,預設是禁止訪問目錄下的檔案清單的。 當你請求一個目錄時:Created with Rapha?l
Time of Update: 2016-07-29
1. 出現“未找到檔案“類似的錯誤時候,檢查include檔案的位置是否正確,下面引用php手冊頁面的原話: Files for including are first looked in include_path relative to the current working directory and then in the directory of the current script. E.g. if your include_path is libraries, current
Time of Update: 2016-07-29
複製代碼 代碼如下: //PHP遍曆檔案夾下所有檔案 $handle=opendir('C:\\'); //我要遍曆C盤的檔案 echo "目錄 handle: $handle "; echo "檔案: "; while ($file =readdir($handle)) { $file=iconv('GB2312','UTF-8',$file);//將XP的gbk編碼轉成UTF8 echo "$file "; //輸出檔案名 } closedir($handle); ?>
Time of Update: 2016-07-29
時間格式為2008-06-16 查詢出當天資料: SELECT * FROM `table` WHERE date(時間欄位) = curdate(); 查詢出當月欄位: SELECT * FROM `table` WHERE month( 時間欄位) = month( now( ) ) ; 時間格式為1219876…… UNIX時間,只要應用“FROM_UNIXTIME( )”函數 例如查詢當月: SELECT * FROM `table` WHERE month(
Time of Update: 2016-07-29
時間一天天過去,這兩個亮點也變得越來越亮,很快,它們受到了編程者的喜歡,於是有人有疑問了:要是它們兩者相遇,會發生什麼事情?有沒有可能將它們的強項結合在一起呢? 嘗試在PHP和Java之間搭建一座橋樑,利用這座橋樑在這兩個實體之間建立起一個溝通渠道,在這座橋樑的協助下,你可以在Java中開發類,然後在PHP中調用它們的方法,同樣,在你的Java案頭或Web應用程式中也可以使用PHP指令碼。 在這篇文章中,你將會學到如何: ◆安裝和配置PHP/Java橋 ◆在PHP指令碼中使用Java類
Time of Update: 2016-07-29
使用 eAccelerator 加密PHP程式 複製代碼 代碼如下:# /usr/local/bin/encoder 執行後會看到簡單的使用說明: 複製代碼 代碼如下:Usage: encoder [options] source_file_name encoder [options] source_file_name... encoder [options] source_directory_name... Options: -s suffix encode files only with
Time of Update: 2016-07-29
這段時間在看《PHP和MySQL Web開發》一書看到str_replace講解,一段小提示寫到:可以為str_replace的三個都使用數組傳入,但講解比較簡單,於是決定自己的實驗一下該函數在各個參數傳入數組時的執行結果。 函數原型:mixed str_replace(mixed needle,mixed new_needle,mixed haystack[,int &count]);
Time of Update: 2016-07-29
1.驗證email: 複製代碼 代碼如下: if (ereg("/^[a-z]([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?$/i; ",$email)){ echo “Your email address is correct!”;} else{ echo "Please try again!"; } ?> 匹配Email郵箱格式的Regex:
Time of Update: 2016-07-29
複製代碼 代碼如下://截取字串長度。支援utf-8和gb2312編碼。若為gb2312,先將其轉為utf-8,在utf-8的基礎上截取然後再轉換回來 function cut_string($str,$from=1,$length=10,$code='utf-8',$rear='...'){ if($code!='utf-8'){//總是將字串轉為utf-8編碼 $str=iconv($code,'utf-8',$str); } $str_len=mb_
Time of Update: 2016-07-29
此文首發在 InfoQ 中文站。作者:明靈(dragon) , Fenng . Note:要轉載的朋友請注意註明這篇文章的第一作者!這篇文章是dragon 朋友來郵探討後他做的一個總結。在 DB 中排序還是在 應用程式中排序是個很有趣的話題,dragon 第一份郵件中其實已經總結的很好了,我添加了一點建議而已。現在放上來,與大家共用。這篇文章也投稿到了 InfoQ 中文站 。Q:列出在 PHP 中執行排序要優於在 MYSQL
Time of Update: 2016-07-29
複製代碼 代碼如下://產生where字串 function get_where($arg = null) { foreach ((array)$arg as $key => $val) { if(is_int($key)) { $where .= " $val "; }else { if(is_string($val)) { if($val === null) { $where .= " and $key is null "; }else { $where .= " and $key = '$