Time of Update: 2016-07-21
複製代碼 代碼如下: $key = array(); $val = array(); foreach ($_POST as $k=>$v) { $key[] = '`'.strip_tags(mysql_real_escape_string(trim($k))).'`'; $val[] = "'".strip_tags(mysql_real_escape_string(trim($v)))."'"; } $keys = join(",",$key); $vals = join(",",$val)
Time of Update: 2016-07-21
複製代碼 代碼如下: $id = intval($_GET['id']); $row = $db->getResult($db->query("select * from ".$t."product where id=$id;")); $rows = $row[0];//處理mysql_fetch_assoc返回來的數組 不用foreach----echo!
Time of Update: 2016-07-21
發現了個調試PHP源碼的好同志: PHP DEBUG TOOLS 其項目地址: http://freshmeat.net/projects/php-debug-tools/ 檔案下載地址: http://freshmeat.net/urls/7c58ae3fecce5763e7546b958d36e082 目前是1.03版本 這裡偶的環境是WINDOW XP , APACHE2.2, PHP5.2+ Zend Optimizer, 這裡結合PHP DEBUG
Time of Update: 2016-07-21
以下是實現例子: 複製代碼 代碼如下: /* * 偽地址轉原地址 (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-21
本打算配置ZendDebugger 進行調試,配置了老長時間沒配置成功,在phpinfo看不到ZendDebugger生效,經查發現是php5.3的問題,必須先卸載,本文介紹使用xdebug了。 軟體安裝太簡單了,分別執行如下命令: sudo apt-get install apache2 sudo apt-get install php5 sudo apt-get install php5-cli sudo apt-get install php5-xdebug php的配置:
Time of Update: 2016-07-21
MongoDB本身有兩種整數類型,分別是:32位整數和64位整數,但舊版的PHP驅動不管作業系統是32位還是64位,把所有整數都當做32位整數處理,結果導致64位整數被截斷。為了在儘可能保持相容性的前提下解決這個問題,新版PHP驅動加入了mongo.native-long選項,以期在64位作業系統中把整數都當做64位來處理,有興趣的可參考:64-bit integers in MongoDB。
Time of Update: 2016-07-21
舉個簡單的例子,這裡有一段代碼: 複製代碼 代碼如下: function Button1_onclick() { alert("Hello"); alert("JacobSong"); } 首先剪下兩個字串:先剪下"JacobSong",然後是"Hello",在第一處按下Ctrl+Shift+V鍵,就會出現這樣的 複製代碼 代碼如下: function Button1_onclick() { alert("Hello"); alert(""); } 在第二處按Ctrl+Shift+V鍵兩次,
Time of Update: 2016-07-21
Memcache資料一致性的問題:當MySQL資料變化後,如果不能及時有效清理掉到期的資料,就會造成資料不一致。這在強調即時性的Web2.0時代,不可取。 Memcache崩潰後的雪崩效應:作為緩衝的Memcache一旦崩潰,MySQL很可能在短時間內承受高負載而宕機。據說前段時間新浪微博就遭遇了這樣的問題。
Time of Update: 2016-07-21
複製代碼 代碼如下: $server = 'localhost'; $user = 'root'; $pass = ''; $dbname = 'dayanmei_com'; $conn = mysql_connect($server,$user,$pass); if(!$conn) die("資料庫系統串連失敗!"); mysql_select_db($dbname) or die("資料庫連接失敗!"); $result = mysql_query("SHOW TABLES");
Time of Update: 2016-07-21
PHP提供了一個錯誤抑制符'@', 它是通過什麼方式來阻止錯誤輸出呢? 我又該在什麼時候使用它呢? 這是這倆天一些網友提到的共同問題, 今天就索性整體回答下, 備後來人翻閱. PHP檔案內嵌HTML的處理方式 在PHP中, 所有在標籤外的字元, 在詞法分析過程中, 都會翻譯成T_INLINE_HTML token, 在文法分析的時候, 所有的T_INLIE_HTML都會被分配ZEND_ECHO輸出. 也就是說: 複製代碼 代碼如下: while($con) { ?> laruence } ?>
Time of Update: 2016-07-21
例如這樣一個表,我想統計email和passwords都不相同的記錄的條數 複製代碼 代碼如下: CREATE TABLE IF NOT EXISTS `test_users` ( `email_id` int(11) unsigned NOT NULL auto_increment, `email` char(100) NOT NULL, `passwords` char(64) NOT NULL, PRIMARY KEY (`email_id`) ) ENGINE=MyISAM
Time of Update: 2016-07-21
研究了一下~方法不少~最後決定用Excel匯入~在網上搜了很多這方面的資料,發現都是將excel檔案另存新檔csv檔案,然後從csv檔案匯入。這裡介紹一個直接將excel檔案匯入mysql的例子。我花了一晚上的時間測試,無論匯入簡繁體都不會出現亂碼,非常好用。 PHP-ExcelReader,下載地址: http://sourceforge.net/projects/phpexcelreader 說明:
Time of Update: 2016-07-21
mysql_num_rows 和 count( * ) 都能統計總數,那個能好一點呢? 或者 分別什麼時候用num_rows 和 count( * )呢 一個直觀的對比 測試資料: 條數:139764條 資料表大小:500M 結果: fetch_num_rows 用時:35.272329092026 count(*) 用時:0.071956872940063 如果單純統計數量 當然是count(*) fetch_num_rows必須遍曆資料庫以後才能得出
Time of Update: 2016-07-21
複製代碼 代碼如下: 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-21
複製代碼 代碼如下: function fetchRoles($user) { if ($this->existsLink($this->rolesField)) { $link =& $this->getLink($this->rolesField); $rolenameField = $link->assocTDG->rolesNameField; } else { $rolenameField = 'rolename'; } if
Time of Update: 2016-07-21
最近在研究自己愛圍脖的時候就要計算到戀愛天數,這需要php根據每天的日期進行計算,下面就來談談實現這種日期計算的幾種方法: (1) 如果有資料庫就很容易了!若是MSSQL可以使用觸發器!用專門計算日期差的函數datediff()便可! 若是MYSQL那就用兩個日期欄位的差值計算的計算結果儲存在另一個數值型欄位中!用時調用便可! (2)如果沒有資料庫,那就得完全用php的時間日期函數! 下面主要說明之: 例:計算1998年5月3日到1999-6-5的天數: 複製代碼 代碼如下:
Time of Update: 2016-07-21
複製代碼 代碼如下: function downloadFile($file){ /*Coded by Alessio Delmonti*/ $file_name = $file; $mime = 'application/force-download'; header('Pragma: public'); // required header('Expires: 0'); //
Time of Update: 2016-07-21
PHP調試有很多中方法。今天給大家推薦的是 FirePHP(http://www.firephp.org/)。這個工具,是基於firefox的一個組件。Firephp組件安裝地址。使用之前需要先安裝下這個組件。完了還需要down一個FirePHP的包。下載地址。下載完成後可以看到包裡的檔案如下:我們現在來寫個例子測試下。(需要include 進來fb.php檔案哦)代碼如下:我們在firefox下運行。結果如下:在這裡就可以看到$str的值了。接下來來介紹下FirePHP的幾個常用方法:1、
Time of Update: 2016-07-21
一開始打算用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-21
複製代碼 代碼如下: //所謂斷字 (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