Time of Update: 2016-06-07
複製代碼 代碼如下:$user_agent = $_SERVER['HTTP_USER_AGENT'];if (strpos($user_agent, 'MicroMessenger') === false) { // 非瀏覽器禁止瀏覽 echo "HTTP/1.1 401 Unauthorized";} else { // 瀏覽器,允許訪問 echo "MicroMessenger"; // 擷取版本號碼
Time of Update: 2016-06-07
一、取部份字串。複製代碼 代碼如下:string substr(string string, int start, int [length]);本函數將字串 string 的第 start 位起的字串取出 length 個字元。若 start 為負數,則從字串尾端算起。若可省略的參數 length 存在,但為負數,則表示取到倒數第 length 個字元。複製代碼 代碼如下:echo substr ( "abcdef" , 1 , 3 ); // 返回 "bcd"echo
Time of Update: 2016-06-07
實踐出真理,寫一個簡單檔案PHP檔案include一個js檔案,執行後沒有報錯或警告資訊,同時看到被包含js的檔案的內容被列印出來。因此得出結論:include 目標檔案可以是任意類型。現在再回頭看include的官方文檔,其中有這麼一段話:“當一個檔案被包含時,文法解析器在目標檔案的開頭脫離 PHP 模式並進入 HTML 模式,到檔案結尾處恢複。由於此原因,目標檔案中需要作為 PHP 代碼執行的任何代碼都必須被包括在有效 PHP 起始和結束標記之中。”
Time of Update: 2016-06-07
假設Yii項目路徑為 /home/apps/1. 建立檔案 /home/apps/protected/commands/crons.php複製代碼 代碼如下:$yii = '/home/apps/framework/yii.php';require_once($yii); $configFile = dirname(__FILE__).'/../config/console.php';Yii::createConsoleApplication($configFile)->run();2.
Time of Update: 2016-06-07
有時候在伺服器上面寫一些指令碼的時候,經常要放到crontab裡面定時運行。時間長了就有一個問題,那就是程式重複運行消耗太多的資源,怎麼處理呢?下面我寫了兩種方法:第一種:用linux裡面的正則匹配複製代碼 代碼如下:function ifrun($clsname,$bf = 0){ //下面進行檢測,如有一個進程正在運行,則不運行 $str=shell_exec("/bin/ps ax > /home/root/".$clsname."_run.txt");
Time of Update: 2016-06-07
php封裝mysql類複製代碼 代碼如下:class Mysql { private $host; private $user; private $pwd; private $dbName; private $charset; private $conn = null; public function __construct() { $this->host = 'localhost'; $this->user = 'root'; $this->pwd = 'root';
Time of Update: 2016-06-07
在一台處理網路支付的伺服器遷移的時候,發現不能支付。PHP環境:PHP版本為5.3.3系統為Red Hat 4.1.2-54查看apache的錯誤記錄檔,發現是加密檔案中一個函數bcmul()報錯:複製代碼 代碼如下:PHP Fatal error: Call to undefined function bcmul() in /php_rsa.php on line xxx解決辦法:使用如下命令:複製代碼 代碼如下:yum install php-bcmath就安裝好了。如果出現下面這種情況:
Time of Update: 2016-06-07
按照ISO 2894中支付卡校正位的演算法 The Luhn Mod-10 Method 規定:1、對卡號上的每位元字乘以權重。其規則是,如果卡號數字個數是偶數,則第一位乘以2,否則就乘以1,然後以後分別是,1,2,1,2,1,2;2、如果每位元字乘以權重後超過9 ,則需要減去 9;3、將所有的處理過的加權數字求和,用 數字 10 求模運算;4、餘數應該是0,否則可能是輸入錯誤。也可能是一個假號。 順手PHP簡單實現下,實際情境前端驗證好一些,例如JS。 複製代碼 代碼如下: function
Time of Update: 2016-06-07
我之前的文章中說過,大多數網站的效能瓶頸不在PHP伺服器上,因為它可以簡單地通過橫向增加伺服器或CPU核心數來輕鬆應對(對於各種雲主機,增加VPS或CPU核心數就更方便了,直接以備份鏡像增加VPS,連作業系統、環境都不用安裝配置),而是在於MySQL資料庫。如果用 MySQL 資料庫,一條聯集查詢的SQL,也許就可以處理完商務邏輯,但是,遇到大量並發請求,就歇菜了。如果用 NoSQL 資料庫,也許需要十次查詢,才能處理完同樣地商務邏輯,但每次查詢都比 MySQL
Time of Update: 2016-06-07
下載地址(github.com/masterexploder/PHPThumb)。注意這個類庫有一個重名的叫phpThumb,只是大小寫差別,所以尋找文檔的時候千萬注意。在網站建設過程中,需要處理圖片的地方多不勝數,用PHP的圖片函數處理圖片,十分繁瑣。而且對新手來講十分不好掌握。現在我們可以用PHPThumb類庫來處理圖片,包括,圖片尺寸調整,圖片截取,圖片加浮水印,圖片旋轉等等功能。使用示範:複製代碼 代碼如下://載入類庫檔案require_once
Time of Update: 2016-06-07
1.依次運行以下命令複製代碼 代碼如下:wget http://pecl.php.net/get/zip-1.8.10.tgz#tar zxvf zip-1.8.3.tgz#cd zip-1.8.3#/opt/php/bin/phpize (對應的phpize路徑)http://yige.org/#./configure --with-php-config=/opt/php/bin/php-config (對應的php-config路徑)#make#make
Time of Update: 2016-06-07
直接上代碼:複製代碼 代碼如下: /*返回一個302地址*/ function curl_post_302($url, $vars) { $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1
Time of Update: 2016-06-07
一、為什麼需要Debugger?很多PHP程式員調試使用echo、print_r()、var_dump()、printf()等,其實對 於有較豐富開發經驗的程式員來說這些也已經足夠了,他們往往可以在程式執行的過程中,通過輸出特定變數的值可以判斷程式執行是否正確,甚至效率高低也可以 看出來(當然可能還需要使用一些時間函數)。那麼我們為什麼還需要一個專門的偵錯工具來監控我們的程式運行呢?
Time of Update: 2016-06-07
複製代碼 代碼如下://獲得視頻檔案的縮圖function getVideoCover($file,$time,$name) { if(empty($time))$time = '1';//預設截取第一秒第一幀 $strlen = strlen($file); // $videoCover = substr($file,0,$strlen-4); // $videoCoverName = $videoCover.'.jpg';//縮圖命名 //exec("
Time of Update: 2016-06-07
有時我們希望片、文字文件、網頁、mp3、pdf等內容,當點擊對應連結時直接下載,而不是在網頁上顯示,那麼就需要強制設定header頭資訊。以下為一段不會產生亂碼的php函數實現代碼,其他程式語言也可參考之編寫實現。複製代碼 代碼如下:/** * Downloader * * @param $archivo * path al archivo * @param $downloadfilename * (null|string) el nombre que queres usar para
Time of Update: 2016-06-07
首先一個常識就是,在瀏覽器執行JS指令碼過程中,當出現指令碼錯誤,並且你沒有手動進行異常捕捉時,他會在瀏覽器下面出現黃色的歎號,這是正常的,這也不是最重要的,最重要的是,出錯行以下的所有JS代碼將中停執行,這是我們不希望看到的,所以說,對於自己寫的,拿不準的指令碼還是加上異常捕捉比較好。1 清除黃色歎號:複製代碼 代碼如下:window.onerror={return true;} //這隻是表面清除了錯誤,但JS代碼將被中停2
Time of Update: 2016-06-07
功能:將檔案壓縮成zip,或者rar的壓縮包。尾碼名可以自訂。使用方法:首先執行個體化,然後傳參。兩個參數。第一個關於你檔案地址的一個Array。第二個是要你要儲存的壓縮包檔案的絕對位址。使用例子:複製代碼 代碼如下: $zipfiles =array("/root/pooy/test1.txt","/root/pooy/test2.txt"); $z = new PHPZip(); //$randomstr = random(8);
Time of Update: 2016-06-07
實現代碼,複製即用:header("Content-type:text/html;charset=utf-8");function getRandPass($length = 6){ $password = ''; //將你想要的字元添加到下面字串中,預設是數字0-9和26個英文字母 $chars = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; $char_len = strlen($chars);
Time of Update: 2016-06-07
於是翻了一下手冊,弄懂幾個函數後自己寫了一個簡單的php產生縮圖的程式。沒有用類,我覺得一個函數就能搞定,而且對於新手來說更容易去理解,從而可以協助到更多的人。支援按比分比縮減,支援按指定的長寬縮減,預設按百分比。程式中注釋已經很詳細了,如有問題可在下面留言,歡迎與我交流。源碼如下:複製代碼 代碼如下: /* * param ori_img 原映像的名稱和路徑 * param new_img 產生映像的名稱 * param percent 表示按照原圖的百分比進行縮減,此項為空白時預設按5
Time of Update: 2016-06-07
用php代碼實現Database Backup可以使網站的管理變得非常便捷,我們可以直接進後台操作就能完成資料庫的備份。關鍵技術:1. 首先要得到該資料庫中有哪些表,所用函數 mysql_list_tables(),然後可以將擷取的所有表名存到一個數組。2. show create table 表名 可以擷取表結構。3. select * from 表名 取出所有記錄,用迴圈拼接成 insert into... 語句。實現代碼:複製代碼 代碼如下: