Time of Update: 2016-07-29
近來看到了一個巧妙地方法,原理是 $var_a ='var_b'; $$var_a ='test'; 則echo $var_b;為'test' 因此可以這樣處理 複製代碼 代碼如下:foreach(array('_COOKIE', '_POST', '_GET') as $_request) { foreach($$_request as $_key => $_value) { $_key{0} != '_' && $$_key = addslashes($_value);
Time of Update: 2016-07-29
以區分大小寫方式比較兩個字串 Strcmp()函數對兩個字串進行二進位安全的比較,並區分大小寫。其形式為: int strcmp ( string str1 , string str2 )根據比較的結果將返回如下的一個可能值。 •如果str1 和str2 相等則返回0 。 •如果str1小於str2則返回-1 。 •如果str1大於str2則返回1 。
Time of Update: 2016-07-29
以下代碼(Code)實現了根據瀏覽器地址欄參數的檔案名稱包含不同檔案的功能。 複製代碼 代碼如下:$file_name = $_GET["filename"]; //獲得當前檔案名稱 include("$file_name "); //包含檔案 //一些其他動作 ?>
Time of Update: 2016-07-29
然後我用PHP實現了這個功能,我覺得用PHP來做這項工作簡直是一種享受!使用其提供的強大的HTML頁面處理函數和Regex,短短的幾行代碼就能搞定這個功能。 貼一下關鍵代碼: 複製代碼 代碼如下://擷取優酷頁面中的flash地址 function get_flash_url( $url ) { $lines = file($url); foreach ($lines as $linenum=> $line) { preg_match_all('|]+)" />|',$line,$result)
Time of Update: 2016-07-29
載入基本檔案 cake/basics.php 裡面定義了常用的方法以及時間常量 $TIME_START = getMicrotime(); 記錄開始執行時間 cake/config/paths.php 裡面定義一些基本路徑 cake/lib/object.php cake的基本類 cake/lib/inflector.php 這裡主要是處理單複數,帶下劃開命名以及駝峰式命名 cake/lib/configure.php 裡面提供檔案配置的讀寫,路徑的設定,以及負載檔案的方法
Time of Update: 2016-07-29
如果訪問量大的話會給資料庫造成很大的負擔,所以對於變化不經常的內容要做好php 資料cache(緩衝)是十分必要的,我做了一個簡單的php“檔案快取”的類,希望對大家有所協助。 思路是這樣的:對於一般的變數,把該變數變成php語言的格式,寫到檔案中,用時只要include這個檔案就相當於載入了cache了; 對於array型的變數,把array轉化為php語言定義array的字串,寫到檔案中,用時也只要include就相當於載入了cache了;
Time of Update: 2016-07-29
mysql_real_escape_string() 所以得SQL語句如果有類似這樣的寫法:"select * from cdr where src =".$userId; 都要改成 $userId=mysql_real_escape_string($userId) 所有有列印的語句如echo,print等 在列印前都要使用htmlentities() 進行過濾,這樣可以防止Xss,注意中文要寫出htmlentities($name,ENT_NOQUOTES,GB2312) 。
Time of Update: 2016-07-29
首先去php網站下載所用到的安裝檔案。根據自己的不同需要選擇,我選擇安裝的是這個版本:php-5.3.2-Win32-VC9-x86.msi。大家可以根據需要下載選擇。然後就可以下載安裝了,一路next下去就可以了。然後在IIS管理器裡面加入一個程式映射即可。在這期間遇到了fastcgi出錯的問題,然後google尋找結果都是空手而回的。估計是跟我裝的版本不一樣導致的,為了配置好這個環境自己又卸載重新安裝php安裝檔案,然後就只在
Time of Update: 2016-07-29
addcslashes — 為字串裡面的部分字元添加反斜線逸出字元 addslashes — 用指定的方式對字串裡面的字元進行轉義 bin2hex — 將位元據轉換成十六進位表示 chop — rtrim() 的別名函數 chr — 返回一個字元的ASCII碼 chunk_split — 按一定的字元長度將字串分割成小塊 convert_cyr_string — 將斯拉夫語字元轉換為別的字元 convert_uudecode — 解密一個字串 convert_uuencode — 加密一個字串
Time of Update: 2016-07-29
定義和用法array_search() 函數與 in_array() 一樣,在數組中尋找一個索引值。如果找到了該值,匹配元素的鍵名會被返回。如果沒找到,則返回 false。在 PHP 4.2.0 之前,函數在失敗時返回 null 而不是 false。如果第三個參數 strict 被指定為
Time of Update: 2016-07-29
1. 格式location ~ /query { default_type application/json; return 200 '{"res":{"code":"0","message":"","value":"$value"}}'; }2. default_type application/json;表示返回的json格式,否則瀏覽器開啟是是個檔案3.如果需要根據請求參數返回不同值,可以考慮使用map,
Time of Update: 2016-07-29
是否一定要這樣做呢?很多網上的文章都是人云亦云,別人說要,他也說要。 其實用的,每次重裝系統,都這樣拷一遍,折騰一遍,太辛苦了。 用過APMServ這個傻瓜式安裝包的朋友可能會發覺,這個東西,在第一次安裝後,以後重裝系統也不會重新安裝的,只要運行一下主程式,就可以運行WAMP的了,不用折騰一遍的。 可能有人會認為它把libmysql.dll拷貝到c:\windows目錄下了,其實不是的,不信去找一找。
Time of Update: 2016-07-29
複製代碼 代碼如下:function cat_options($spec_cat_id, $arr) { static $cat_options = array(); if (isset($cat_options[$spec_cat_id])) { return $cat_options[$spec_cat_id]; } /* 初始化關鍵參數: $level:當前子節點深度 $last_cat_id:當前父節點ID $options:帶有縮排層級的數組
Time of Update: 2016-07-29
複製代碼 代碼如下:function getip() { $IP=getenv('REMOTE_ADDR'); $IP_ = getenv('HTTP_X_FORWARDED_FOR'); if (($IP_ != "") && ($IP_ != "unknown")) $IP=$IP_; return $IP; } 下面這個比較好的複製代碼 代碼如下:function getIP() { if (isset($_SERVER)) { if
Time of Update: 2016-07-29
http://code.google.com/apis/ajaxsearch/documentation/#fonje 複製代碼 代碼如下:// This example request includes an optional API key which you will need to // remove or replace with your own key. // Read more about why it's useful to have an API key. // The
Time of Update: 2016-07-29
PHP裡有$_GET,$_POST,但是沒有$_PUT,所以如果需要使用它的話,則你不得不自己類比一下: 複製代碼 代碼如下:$_PUT = array(); if ('PUT' == $_SERVER['REQUEST_METHOD']) { parse_str(file_get_contents('php://input'), $_PUT); } 通過php://input得到的資料是raw data,所以需要用parse_str解析一下。
Time of Update: 2016-07-29
Xdebug安裝 下載xdebug擴充的時候注意xdebug的版本與php版本相對應,不然出現不必要的麻煩! 我自己使用的是PHP5.2.5,下載的xdebug檔案名稱為:php_xdebug-2.0.3-5.2.5.dll,將檔案放到php/ext檔案夾下即可 3.配置 xdebug配置 開啟php.ini 在最後一行加入以下配置代碼,配置說明已經做好注釋 ;載入Xdebug zend_extensi ;如果使用相對路徑可以這樣寫 ;extension= "php_xdebug-2.0.4-5
Time of Update: 2016-07-29
使用方法: Memcached 複製代碼 代碼如下:$cache = new Cache_MemCache(); $cache->addServer('www1'); $cache->addServer('www2',11211,20); // this server has double the memory, and gets double the weight $cache->addServer('www3',11211); // Store some data in the cache
Time of Update: 2016-07-29
先從字面意思上理解,None-Thread Safe就是非安全執行緒,在執行時不進行線程(thread)安全檢查;Thread Safe就是安全執行緒,執行時會進行線程(thread)安全檢查,以防止有新要求就啟動新線程的 CGI 執行方式耗盡系統資源。 再來看PHP的兩種執行方式:ISAPI和FastCGI。FastCGI執行方式是以單一線程來執行操作,所以不需要進行線程的安全檢查,除去安全執行緒檢查的防護反而可以提高執行效率,所以,如果是以 FastCGI(無論搭配 IIS 6 或 IIS
Time of Update: 2016-07-29
今天弄了一天,總算把win2003下的問題給解決了, LoadModule php5_module E:\server\php528\php5apache2_2.dll 可能有些朋友也知道,添加這句後,就不用把php.ini拷貝到系統目錄: PHPIniDir E:\server\php528\php.ini 現在我說說不用把libmysql.dll拷到系統目錄的辦法,就是在載入php5_module前,添加這句: LoadFile "E:\server\php528\libmysql.dll"