Time of Update: 2018-12-08
curl_close — 關閉一個curl會話 curl_copy_handle — 拷貝一個curl串連資源的所有內容和參數 curl_errno — 返回一個包含當前會話錯誤資訊的數字編號 curl_error — 返回一個包含當前會話錯誤資訊的字串 curl_exec — 執行一個curl會話 curl_getinfo — 擷取一個curl串連資源控制代碼的資訊 curl_init — 初始化一個curl會話 curl_multi_add_handle —
Time of Update: 2018-12-08
這段時間在看《PHP和MySQL Web開發》一書看到str_replace講解,一段小提示寫到:可以為str_replace的三個都使用數組傳入,但講解比較簡單,於是決定自己的實驗一下該函數在各個參數傳入數組時的執行結果。 函數原型:mixed str_replace(mixed needle,mixed new_needle,mixed haystack[,int &count]);
Time of Update: 2018-12-08
採集回來的圖片img標籤中,有好多javascript指令碼和無用的資訊,必需過替換自己想要的,比如alt。先看看要過濾的內容,我隨便複製出來: 複製代碼 代碼如下:sdfsdfsdf<img alt=”3568df.com靚圖” src=”http://www.aaa.com/upimg /080330/120D1232295023X0.gif” src=”http://www.eee.com/upimg/080330 /120D1232295023X0.gif” width=1
Time of Update: 2018-12-08
1.驗證email: 複製代碼 代碼如下:1. < ?php 2. 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)){ 3. echo “Your email address is correct!”;} 4. else{ 5. echo “Please try again!”; 6. } 7.
Time of Update: 2018-12-08
在你的程式初始化時使用如下代碼: 複製代碼 代碼如下:<?php $Php2Html_FileUrl = $_SERVER["REQUEST_URI"]; $Php2Html_UrlString = str_replace("/", "", strrchr($Php2Html_FileUrl, "/")); $Php2Html_UrlQueryStrList = explode("@", $Php2Html_UrlString);
Time of Update: 2018-12-08
友好URL的實現(吐血推薦) 大家經常看到別的站的URL是這樣的吧? http://www.xxx.com/module/show/action/list/page/7 或者 http://xx.com/module/show/action/show/id/8.shtml 帶副檔名的 或者 http://xx.com/module/show/action/show/id/8?word=ss&age=11 這樣的吧 今天我就是公布下這種方法的實現,並獨立出最簡單的代碼
Time of Update: 2018-12-08
使用 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: 2018-12-08
1.產生隨機字串函數 function random($length) { $hash = @#@#; $chars = @#abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz@#; $max = strlen($chars) - 1; mt_srand((double)microtime() * 1000000); for($i = 0; $i < $length; $i++) { $hash .= $chars[
Time of Update: 2018-12-08
大部分Web掃描器(包括上傳、管理後台掃描器)都是通過判斷HTTP的200返回來確定頁面存在的,在頁面存在的基礎上,這些掃描期才會開始對漏洞進行掃描。既然不能保證內部邏輯的嚴密,那麼就在輸入/輸出這個瓶頸上做文章,當輸入錯誤的密碼或者許可權失敗時,我們自己返回一個400錯誤的HTTP訊息來誤導掃描器不再繼續進行掃描(包括哪些手工入侵者) 以PHP為例: 複製代碼 代碼如下:<?php ob_start(); if ('Password' != $_GET['password'])
Time of Update: 2018-12-08
複製代碼 代碼如下:/** * 顯示樣式2 */ function multi($mpurl,$page = 10) { $multipage = ''; $mpurl .= strpos($mpurl, '?') ? '&' : '?'; $realpages = 1; if($this->infocount > $this->items) { $offset = 2; $realpages = @ceil($this->infocount /
Time of Update: 2018-12-08
前幾天做了個小說連載的程式,因為怕更新麻煩,順帶就寫了個採集器,採集八路中文網的,功能比較簡單,不能自訂規則,不過大概思路都在裡面了,自訂規則可以自己來擴充。 用php來做採集器主要用到兩個函數:file_get_contents()和preg_match_all(),前一個是遠程讀取網頁內容的,不過只在php5以上的版本才能用,後一個是正則函數,用來提取需要的內容的。 下面就一步一步來講功能實現。 因為是採集小說,所以首先要將書名、作者、類型這三個提取出來,別的資訊可根據需要提取。
Time of Update: 2018-12-08
/** * 從數組中刪除空白的元素(包括只有空白字元的元素) * * @param array $arr * @param boolean $trim */ 複製代碼 代碼如下:function array_remove_empty(& $arr, $trim = true) { foreach ($arr as $key => $value) { if (is_array($value)) { array_remove_empty($arr[$key]); } else {
Time of Update: 2018-12-08
之前寫了一片文章關於如何在ZF0.6版本下擴充ZF的。這篇應該說是類似的文章,但環境換成ZF1.0RC1版本了。 在開始ZF擴充之前,推薦先看看ZF手冊中的一些命令規範(ZF推薦使用),同時希望讀者對ZF有較好的理解。如果沒有,可以先上PHPCHIAN的ZF版本詳細瞭解,或者到phpeye尋找相關資料。 ZF的validator提供了強大的驗證功能,但在實際的操作中還是過於煩瑣。比如說驗證郵件,是用ZF的代碼如下 <?php require_once
Time of Update: 2018-12-08
第一步:入門 如何使用phpbean進行路由轉寄呢?下面是一個簡單的使用例子。 首先,index.php是程式的單一入門,主要進行路由轉寄的工作。Index.php的程式碼如下: <? include('startup.php');//載入開機檔案 try{ $router=new Phpbean_Router();//初始化路由器 $router->set_path(SITE_PATH.'/app/actions');//設定控制器的目錄
Time of Update: 2018-12-08
Phpbean的核心檔案很少,這和phpbean的設計思想(強調效能和分工合作開發)是非常相關的。Phpbean的核心僅僅只是實現基本的MVC架構,不提供任何多餘的代碼,對程式員是非常透明的。 Phpbean的核心檔案說明如下(注意,核心檔案大都可以單獨使用): 1、 action.php action的基類。任何其他的action都必須是它的子類。裡面之實現一個功能:對URL資料的處理。 2、 Exception.php是異常處理類,直接繼承與Exception 3、 Registry.
Time of Update: 2018-12-08
1、模板的由來 在沒有模板技術之前,使用PHP開發程式,通常都是php代碼和html混編在一起。比如說新聞列表,很可能就是一個newslist.php頁面,結構如下: <? //從資料庫中讀取出要顯示的新聞記錄 ?> <html> <head>…….. </head> <body> <? While ($news = mysql_fetch_array($result)) { ?>
Time of Update: 2018-12-08
註:這是從PHPCMS開發文檔裡看到編碼規範,雖名為PHPCMS的開發規範,但我覺得所有的PHP編程都該如此。寫了那麼多PHP,很多編碼對照這規範都感覺欠缺很多,今後一定要對照糾正。 Phpcms 編碼規範 1. 引言…. 2 2. 適用範圍…. 2 3. 標準化的重要性和好處…. 3 4. PHP編碼規範與原則…. 3 4.1. 代碼標記… 3 4.2. 注釋… 3 4.3. 書寫規則… 4 4.3.1. 縮排… 4 4.3.2. 大括弧{}、if和switch. 4 4.3.3.
Time of Update: 2018-12-08
//中文截取2,單位元組截模數式 function cn_substr($str,$slen,$startdd=0){ $restr = ""; $c = ""; $str_len = strlen($str); if($str_len < $startdd+1) return ""; if($str_len < $startdd + $slen || $slen==0) $slen = $str_len - $startdd;
Time of Update: 2018-12-08
//把全形數字轉為半形數字 function GetAlabNum($fnum){ $nums = array('0','1','2','3','4','5','6','7','8','9','.','-','+',':'); $fnums = array('0','1', '2','3', '4','5', '6', '7','8', '9','.', '-', '+',':'); $fnlen = count($fnums);
Time of Update: 2018-12-08
smtp.class.php 複製代碼 代碼如下:<?php define('SMTP_STATUS_NOT_CONNECTED', 1, TRUE); define('SMTP_STATUS_CONNECTED', 2, TRUE); class smtp { var $connection; var $recipients; var $headers; var $timeout; var $errors; var $status; var $body;