Time of Update: 2018-12-08
無法復原的加密函數為:md5()、crypt() md5() 用來計算 MD5 哈稀。文法為:string md5(string str); crypt() 將字串用 UNIX 的標準加密 DES 模組加密。這是單向的加密函數,無法解密。欲比對字串,將已加密的字串的頭二個字元放在 salt 的參數中,再比對加密後的字串。文法為:string crypt(string str, string [salt]); 可逆轉的加密為:base64_encode()、urlencode()
Time of Update: 2018-12-08
思維導圖 點擊,可以看大圖。 介紹 我把我比較喜歡的和比較關注的地方寫下來和大家分享。上次我寫了篇《php 跟老大的對話》。還是有很多疑問,這書幫了我不少的忙。 如果你比較繁忙,或者懶得看文字,建議你直接看,也會有很大的收穫的。你可以通過比較中的代碼就能知道孰優孰劣了。 代碼部分我為什麼用圖呢?因為我經常用手機看代碼,部落格園的代碼在手機裡亂七八糟的,還是看圖比較舒服。 專業術語
Time of Update: 2018-12-08
一.HTML頁面轉UTF-8編碼問題 1.在head後,title前加入一行: <meta http-equiv='Content-Type' content='text/html; charset=utf-8' /> 順序不能錯,一定要在 顯示的標題有可能是亂碼! 2.html檔案編碼問題: 點擊編輯器的菜單:“檔案”->“另存新檔”,可以看到當前檔案的編碼,確保檔案編碼為:UTF-8, 如果是ANSI,需要將編碼改成:UTF-8。 3.HTML檔案頭BOM問題:
Time of Update: 2018-12-08
去年年底的各種網站帳號資訊的資料庫泄漏,很是給力啊,趁機也下載了幾個資料庫,準備學學資料分析家來分析一下這些帳號資訊。雖然這些資料資訊都已經被“整理”過的,不過自己拿來學習也挺有用的,畢竟有這麼大的資料量。 資料量大帶來的問題就是單個檔案很大,能夠開啟這個檔案相當不容易,記事本就不要指望了,果斷死機。用MSSQL的用戶端也打不開這麼大的SQL檔案,直接報記憶體不足,原因據說是MSSQL在讀取資料的時候,是一次性地將讀取到的資料放在記憶體中,如果資料量過大,而記憶體不足,則會直接導致系統癱掉。
Time of Update: 2018-12-08
@access 使用範圍:class,function,var,define,module 該標記用於指明關鍵字的存取許可權:private、public或proteced @author 指明作者 @copyright 使用範圍:class,function,var,define,module,use 指明著作權資訊 @deprecated 使用範圍:class,function,var,define,module,constent,global,include 指明不用或者廢棄的關鍵字
Time of Update: 2018-12-08
介紹 對於php效能問題,議論最多的就是__autoload()方法,很多人提到這個方法非常影響效能。還有人說opcode也能影響到__autoload()方法,所以針對這兩點我做了個測試。 最終發現__autoload方法在效能方面的影響不是很大的。 環境 PHP:5.3.9 ——以fastcgi模式啟動 Nginx:1.1.12 eaccelerator:0.9.6.1 。 最終發現__autoload方法在效能方面的影響不是很大的。 環境 PHP:5.3.9
Time of Update: 2018-12-08
使用方法 複製代碼 代碼如下:$mysql = new sqlstr("table1"); $mysql->set("name","value"); $mysql->set("name","1",true); echo $mysql->insertSql(); 複製代碼 代碼如下:class sqlstr { private $param=array(); private $tablename; function sqlstr($tablename) {
Time of Update: 2018-12-08
SESSION會話開啟時,會首先發送一個對瀏覽器的唯一標識session_id的cookie(名字為PHPSESSID可以通過session_name()擷取),同session.save_handler = files的情況下,在伺服器的指定目錄(如temp)下產生一個沒有尾碼的檔案,名字是複製代碼 代碼如下:'sess_" + 'session_id';
Time of Update: 2018-12-08
計劃任務 複製代碼 代碼如下:ignore_user_abort(); // 使用者關閉瀏覽器程式依然執行 set_time_limit(0); // 不限制程式已耗用時間 $interval = 3; // 程式迴圈間隔時間秒 $link = mysql_connect('localhost', 'username', 'paswd'); mysql_select_db('test'); mysql_query("SET NAMES 'utf8'"); do { // 使用者關閉瀏覽器停止
Time of Update: 2018-12-08
沒有找到 PHP 擴充 mbstring,而您現在好像在使用多位元組字元集。沒有 mbstring 擴充的 phpMyAdmin 不能正確分割字串,可能產生意想不到的結果。 無法載入mcrypt的解決辦法 提示:無法載入mcrypt (外鏈,英語) 擴充,請檢查您的 PHP 配置。 在C:\WINDOWS目錄下的php.ini檔案中, 沒有將“;extension=php_mcrypt.dll”中的前面一個“;”去掉 所以不能使用相應功能,解決方案是開啟php.ini檔案,找到
Time of Update: 2018-12-08
PHP壓縮html網頁代碼 (清除空格,分行符號,定位字元,注釋標記)。 有個不錯的方法就是壓縮HTML,壓縮html 其實就是:清除分行符號,清除定位字元,去掉注釋標記 。它所起到的作用不可小視。 現提供PHP 壓縮HTML函數。請大家不妨試試看,感覺還不錯吧。 不廢話了,直接上代碼: 複製代碼 代碼如下:<?php /** * 壓縮html : 清除分行符號,清除定位字元,去掉注釋標記 * @param $string * @return 壓縮後的$string * */
Time of Update: 2018-12-08
1、沒有正確安裝Mysql資料庫,在系統服務中Mysql相關的服務沒有啟動 (請查看正確安裝Mysql的方法) 2、在系統的 system32(C:\windows\system32) 目錄下缺少 libmcrypt.dll檔案,解決方案是找到php目錄下的libmcrypt.dll,並將libmcrypt.dll複製到C:\windows\system32目錄中,然後重新啟動Web服務。
Time of Update: 2018-12-08
複製代碼 代碼如下:<?php $foo = 'Bob'; // 將 'Bob' 賦給 $foo $bar = &$foo; // 通過 $bar 引用 $foo echo $foo.'<br/>'; $bar = "My name is $bar"; // 修改 $bar 變數 echo $bar.'<br/>'; echo $foo.'<br/>'; // $foo 的值也被修改 ?> 輸出: Bob My name is Bob
Time of Update: 2018-12-08
今天處理了一個很小的問題。 需求是這樣的,從周一到周日只能看到上周一到上周日的資料。 這裡直接從資料庫雷根據 date 欄位查詢 範圍即可。 但需要PHP產生 開始日期和結束日期。 最開始,我直接這麼處理。 複製代碼 代碼如下:$start_date = date('Y-m-d' , strtotime("-2 week monday")); $end_date = date('Y-m-d' , strtotime("$start_date +6 day")); 假如日期是 2011-07-19
Time of Update: 2018-12-08
函數如下: 複製代碼 代碼如下:function update_timelist(&$arr,$timestamp,$threshold){ $timequeue = &$arr['timequeue']; while(!empty($timequeue[0])&&($timestamp-$timequeue[0])>$threshold){ array_shift($timequeue); } array_push($timequeue,
Time of Update: 2018-12-08
當我們使用CURL來post資料的時候,需要設定post的資料 curl_setopt($c, CURLOPT_POSTFIELDS, $post_data); 假如這裡的$data是 複製代碼 代碼如下:$data = array( 'name'=>'scofield', 'time'=>'2012-2-3' ) 接下來,需要先將$data變成字串 $post_data = http_build_query($data); 而採用 http_build_query 轉換後再
Time of Update: 2018-12-08
複製代碼 代碼如下:<?php echo 'begin time:'.$begin=microtime(false).'<br/>';//begin to count time $array=array(); for ($i=1;$i<=10000;$i++) {//產生一個很大的數組 $array[$i]=$i; } /* $arr=$array;//拷貝 拷貝並列印總時間0.02 foreach ($arr as $ar) { echo
Time of Update: 2018-12-08
複製代碼 代碼如下:$str = '中華人民共和國123456789abcdefg'; echo preg_match("/^[u4e00-u9fa5_a-zA-Z0-9]{3,15}$",$strName); 運行一下上面這段代碼,看會有什麼提示資訊? Warning: preg_match(): Compilation failed: PCRE does not support L, l, N, P, p, U, u, or X at offset 3 in
Time of Update: 2018-12-08
PHP中遍曆數組有三種常用的方法: 一、使用for語句迴圈遍曆數組; 二、使用foreach語句遍曆數組; 三、聯合使用list()、each()和while迴圈遍曆數組。 這三種方法中效率最高的是使用foreach語句遍曆數組。從PHP4開始就引入了foreach結構,是PHP中專門為遍曆數組而設計的語句,推薦大家使用。先分別介紹這幾種方法。 一、使用for語句迴圈遍曆數組
Time of Update: 2018-12-08
php網頁出現亂碼一般是在建立資料庫時用的編碼和php網頁的編碼不同造成的, 用phpmyadmin建立的資料庫如果你不指定編碼他預設是latin1_swedish_ci 編碼,既瑞典語不區分大小寫,而我們中國做的網頁不是GBK就是GB2312編碼,這樣不出現亂碼才怪. 1,建立資料庫時指定編碼. 在此再嘮叨一下常用的編碼,免的新手又迷茫: 如果你做的是簡體中文網頁,那麼你在建立資料庫時用GB2312編碼,gb2312_chinese_ci.