Time of Update: 2016-07-29
以下是實現例子: 複製代碼 代碼如下:/* * 偽地址轉原地址 (url_alter) */ function example_url_inbound_alter(&$path, $original_path, $path_language) { if (preg_match('|^article(/.*)|', $path, $matches)) { $path = 'node'. $matches[1]; } } /* * 原地址轉偽地址 (url_alter) */ function
Time of Update: 2016-07-29
我們只要在feedback.php中添加下面的代碼進行判斷就可以了。 注意:下邊只是一個PHP限制IP的執行個體代碼,如果您打算應用到CMS中,請自行修改,或者如果您正在使用DEDECMS,可以聯絡本站。 複製代碼 代碼如下://加IP訪問限制 if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) { $userip = getenv('HTTP_CLIENT_IP'); } elseif(
Time of Update: 2016-07-29
研究了一下~方法不少~最後決定用Excel匯入~在網上搜了很多這方面的資料,發現都是將excel檔案另存新檔csv檔案,然後從csv檔案匯入。這裡介紹一個直接將excel檔案匯入mysql的例子。我花了一晚上的時間測試,無論匯入簡繁體都不會出現亂碼,非常好用。 PHP-ExcelReader,下載地址: http://sourceforge.net/projects/phpexcelreader 說明:
Time of Update: 2016-07-29
一開始打算用foreach來曆遍,但是發現沒有成功,oo不過關,沒辦法oo寫······ 研究後決定用for迴圈,示範代碼如下: 複製代碼 代碼如下:$blog=array( array( "titledata"=>"titleMM", "bodydata"=>"bodyMM" ), array( "titledata"=>"titleGG", "bodydata"=>"bodyGG" ) ); //出錯 foreach($blog as $b) { $b['titledata']="BB";
Time of Update: 2016-07-29
find函數的原型 複製代碼 代碼如下:/** * 返回合格第一條記錄及所有關聯的資料,查詢沒有結果返回 false * * @param mixed $conditions * @param string $sort * @param mixed $fields * @param mixed $queryLinks * * @return array */ function & find($conditions, $sort = null, $fields = '*',
Time of Update: 2016-07-29
複製代碼 代碼如下:/* Compress multiple CSS files into one and cache for an hour. Use the same code for Javascript, but replace below "text/css" with "text/javascript" and of course make sure you include .js files instead of .css ones. */
Time of Update: 2016-07-29
PHP中不需要顯示聲明變數,變數聲明可以與賦值同時進行。好的編程習慣是:所有變數應當在使用前進行聲明,最好帶有注釋。一、變數的賦值 變數聲明後就可以給其賦值,有兩種方式:值賦值和引用賦值。 1、值賦值 $color = "red" ; $sum = 12+"15" ; /* $sum = 27 */ 2、 若希望兩個變數指向一個值的同一個副本,則需要通過引用賦值。 引用賦值 所建立的變數與另一個變數引用的內容相同,如果多個變數引用了同一個內容,修改其中任意一個變數,在其餘的變數上都將有所反映。
Time of Update: 2016-07-29
php代碼:複製代碼 代碼如下:/* /flashservices/services/Catalog.php */ class Catalog { var $products_array = array(); // Constructor: Contains the list of methods available to the gateway function Catalog() { $this->methodTable = array (
Time of Update: 2016-07-29
Fatal error: Cannot redeclare htmtocode() (previously declared in D:\www_local\mytest\conn.php:7) in D:\www_local\mytest\conn.php on line 10 這個錯誤提示出現在寫分頁檔案page.php時 google翻譯這句話的意思是“致命錯誤:不能重新聲明htmtocode()” 第10行的代碼為 //串連資料庫 include("conn.php");
Time of Update: 2016-07-29
複製代碼 代碼如下:function cleanGlobal($global_array, $arg, $specialchars = true, $default = null) { if(key_exists($arg, $global_array) && $global_array[$arg] != null && $global_array[$arg] != "") { if($specialchars) {
Time of Update: 2016-07-29
我們前期開發了一個只有公司客服人員才能使用的系統——有限的幾個客服人員。就是這有限的幾個客服人員前幾天突然就提出這樣的問題:我們每隔很短一段時間 (半個小時不操作頁面),正著急解決客戶問題的時候,系統卻提示需要登入,耽誤了客戶的時間…… 這很不爽! 客戶就是上帝,唯一的上帝。於是上峰要求我們能夠實現PHP中的session永不到期,除非我們的客服人員人為的讓他到期了。出於安全性的考慮我很不理解這種永不到期的行為;出於懶惰的原因我真的不想修改以前的程式。但是沒有辦法,我依然需要改。
Time of Update: 2016-07-29
複製代碼 代碼如下:function downloadFile($file){ /*Coded by Alessio Delmonti*/ $file_name = $file; $mime = 'application/force-download'; header('Pragma: public'); // required header('Expires: 0'); // no
Time of Update: 2016-07-29
任何一個WEB行為都可以認為是一個模組的某個操作,系統會根據當前的URL來分析要執行的模組和操作。這個分析工作由URL調度器來實現,官方內建了Dispatcher類來完成該調度。 在Dispatcher調度器中,會根據 http://servername/appName/moduleName/actionName/params 來擷取當前需要執行的項目(appName)、
Time of Update: 2016-07-29
複製代碼 代碼如下://所謂斷字 (word break),即一個單詞可在轉行時斷開的地方。這一函數將在斷字處截斷字串。 // Please acknowledge use of this code by including this header. function myTruncate($string, $limit, $break=".", $pad="...") { // return with no change if string is shorter than $limit if(
Time of Update: 2016-07-29
1. 值的析取PHP中,用list來析取數組中的值,如list($a, $b) = $array。如果list中的值多於數組個數,list中多餘的值會設為NULL。也可以用逗號來跳過數組中的值,如list($a, ,$b) = $array。2.劃分數組如果想取得子數組,可以用array_slice(array, offset,
Time of Update: 2016-07-29
PHP的數組,說白了,就是關聯資料每一條數組都是以[索引,值]的形式儲存的。其中索引預設是以0開始的數字。在未指定索引時,PHP會從0開始自動產生索引。當指定一個索引,PHP會從你指定索引最大正整數的下一個整數開始。如果你指定的是小數,PHP會取整數部分做為索引。 另外說說數組其它一些小東西: array()可以聲明一個空數組; array[] = $value 在數組存在時,追加一個資料;在數組不存時,產生一個數組,並追加資料。 array[$index] = $value 在數組存在時,
Time of Update: 2016-07-29
解決方案如下,其它架構雷同。 原始碼(/system/libraries/upload.php 199 line) $this->file_type = preg_replace("/^(.+?);.*$/", "\\1", $_FILES[$field]['type']); 修改成如下: 複製代碼 代碼如下://Edit By Tacker if(function_exists('mime_content_type')){ $this->file_type = preg_replace("/^
Time of Update: 2016-07-29
1. 字串比較 在PHP中,可以用==(雙等號)或者 ===(三等號)來比較字串。兩者的區別是雙等號不比較類型,三等號會比較類型,它不轉換類型;用雙等號進行比較時,如果等號左右兩邊有數字類型的值,剛會把另一個值轉化為數字,然後進行比較。這樣的話,如果是純字串或者NULL時,會轉化為0進行比較。同樣,大小於符號也和等號一樣,比較時可能出現不正確的結果。
Time of Update: 2016-07-29
1. 訪問單個字元在PHP中,可以把字串當成一個字元的數組,可以直接用數組的存取方法來訪問字串。如$str[0]。在這裡要注意的是,如果字元是ASCII碼以外時,訪問會有問題。因為這種訪問只能取得一個位元組。 2. 刪除空白字元在PHP中,可以用trim(), ltrim(), rtrim()三個函數來刪除字串開頭或結尾的空白字元。其中,trim()用於刪除字元前後的空白字元;ltrim()用於刪除字元左側的空白字元;rtrim()用於刪除字元右側的空白字元。在預設情況下,會刪除以下字元:空格(
Time of Update: 2016-07-29
下面一一進行介紹。 1. echo echo 是PHP的一個關鍵字,它沒有傳回值。在寫法上,它可以省略小括弧。如下代碼: 複製代碼 代碼如下:echo 'Test String'; echo('Test String'); 2. print print 也是PHP的一個關鍵字,它有傳回值,一般返回true,返回false的情況應該沒有。在寫法上,它和echo一樣,可以省略小括弧。如下代碼: 複製代碼 代碼如下:print 'Test String'; print('Test String');