Time of Update: 2016-07-21
以下函數可用於替換php內建的is_writable函數複製代碼 代碼如下://可用於替換php內建的is_writable函數function isWritable($filename){ if(preg_match('/\/$/',$filename)){ $tmp_file=sprintf('%s%s.tmp',$filename,uniqid(mt_rand())); return isWritable($tmp_file); }
Time of Update: 2016-07-21
最近一直在忙,趕在這個假期結束的時候,發表一下此文,為了是讓這些源碼開源出來當然這些方法可能不可取,但大致應該是這種方向了吧,由於目前做的一個UCHOME港台的網站咱們策劃說要改一下好友邀請裡面的顯示方式,開始我也沒有在意,當時就說行!到了弄這個的時候才發現,UCH裡面的這個地方是用漫遊型式做的,讓人很是無解,啥都改不了!唉,既然都答應了說可以,現在實際情況不行了,所以覺得不好意思,為了快速解決這問題,在GOOGLE,百度上搜了個遍,結果又出忽意料,就一個126郵箱的開源例子,其它的都沒有,有一
Time of Update: 2016-07-21
有這樣的一個問題mysql查詢使用mysql中left(right)join篩選條件在on與where查詢出的資料是否有差異。可能只看著兩個關鍵字看不出任何的問題。那我們使用實際的例子來說到底有沒有差異。例如存在兩張表結構表結構1複製代碼 代碼如下:drop table if EXISTS A; CREATE TABLE A ( ID int(1) NOT NULL, PRIMARY KEY (ID) ) ENGINE=MyISAM DEFAULT CHARSET=latin1
Time of Update: 2016-07-21
所需環境:php 5.3.3apache 2.2.7mysql 5.5.8相關文檔下載:點擊下載解壓Memcached_1.2.5文檔,cmd下執行memcached.exe -d -install將php5.3_vc6_memcachedll文檔解壓,將php_memcache.dll檔案複製到php安裝目錄的ext檔案目錄中。然後在php.ini
Time of Update: 2016-07-21
wget http://xcache.lighttpd.net/pub/Releases/1.3.0/xcache-1.3.0.tar.gzsudo tar -xzvf xcache-1.3.0.tar.gzcd xcache-1.3.0sudo /usr/local/php-5.3.3/bin/phpize sudo ./configure --with-php-config=/usr/local/php-5.3.3/bin/php-configsudo makesudo make
Time of Update: 2016-07-21
用PHP寫一個驗證碼類,並進行封裝。類名: validationcode.class.php代碼如下:複製代碼 代碼如下: class ValidationCode { private $width; private $height; private $codeNum; private $image; //映像資源 private $disturbColorNum; private $checkCode; function __construct($width=80,
Time of Update: 2016-07-21
nclude()The include() 語句包括並運行指定檔案。以下文檔也適用於require()。這兩種結構除了在如何處理失敗之外完全一樣。include() 產生一個警告而require() 則導致一個致命錯誤。換句話說,如果你想在遇到丟失檔案時停止處理頁面就用require()。include() 就不是這樣,指令碼會繼續運行。同時也要確認設定了合適的include_path。當一個檔案被包括時,其中所包含的代碼繼承了include
Time of Update: 2016-07-21
在使用 php 編寫頁面程式時,我經常使用變數處理函數判斷 php 頁面尾部參數的某個變數值是否為空白,開始的時候我習慣了使用 empty() 函數,卻發現了一些問題,因此改用 isset() 函數,問題不再。顧名思義,empty() 判斷一個變數是否為“空”,isset() 判斷一個變數是否已經設定。正是這種所謂的“顧名思義”,令我開始時走了些彎路:當一個變數值等於0時,empty()也會成立(True),因而會發生 一些意外。原來,empty() 和 isset()
Time of Update: 2016-07-21
fopen() 函數用於在 PHP 中開啟檔案。此函數的第一個參數含有要開啟的檔案的名稱,第二個參數規定了使用哪種模式來開啟檔案:複製代碼 代碼如下:$file=fopen("welcome.txt","r");?>檔案可能通過下列模式來開啟:r : 唯讀。指標定位在檔案的開頭,如果檔案不會報錯。r+: 讀/寫。指標定位在檔案的開頭,如果檔案不存會報錯。w : 唯寫。開啟並清空檔案的內容,如果檔案不存在,則建立新檔案。w+: 讀/寫。開啟並清空檔案的內容,如果檔案不存在,則建立新檔案。a :
Time of Update: 2016-07-21
PHP的header函數 可以很少代碼就能實現HTML代碼中META 標籤這裡只說用 header函數來做頁面的跳轉1. HTML代碼中頁面的跳轉的代碼HTML meta refresh 重新整理與跳轉(重新導向)頁面refresh 屬性值 -- 重新整理與跳轉(重新導向)頁面* refresh用於重新整理與跳轉(重新導向)頁面* refresh出現在http-equiv屬性中,使用content屬性工作表示重新整理或跳轉的開始時間與跳轉的網址* 引用網址:http://www.dreamdu.
Time of Update: 2016-07-21
首先讓我們看一個問題: 如下代碼的輸出,複製代碼 代碼如下:var_dump(memory_get_usage());$a = "laruence";var_dump(memory_get_usage());unset($a);var_dump(memory_get_usage());輸出(在我的個人電腦上, 可能會因為系統,PHP版本,載入的擴充不同而不同):int(90440)int(90640)int(90472)注意到 90472-90440=32, 於是就有了各種的結論,
Time of Update: 2016-07-21
1、nginx相對於apache的優點: 輕量級,同樣起web 服務,比apache佔用更少的記憶體及資源 抗並發,nginx 處理請求是非同步非阻塞的,而apache 則是阻塞型的,在高並發下nginx 能保持低資源低消耗高效能 高度模組化的設計,編寫模組相對簡單 社區活躍,各種高效能模組出品迅速啊 apache 相對於nginx 的優點: rewrite ,比nginx 的rewrite 強大 動態網頁面模組超多,基本想到的都可以找到 少bug ,nginx 的bug 相對較多 超穩定
Time of Update: 2016-07-21
Heredoc技術,在正規的PHP文檔中和技術書籍中一般沒有詳細講述,只是提到了這是一種Perl風格的字串輸出技術。但是現在的一些論壇程 序,和部分文章系統,都巧妙的使用heredoc技術,來部分的實現了介面與代碼的准分離,phpwind模板就是一個典型的例子。如下:複製代碼 代碼如下:$name = '淺水遊';print Untitled
Time of Update: 2016-07-21
在使用資料庫之前,我們最好將資料庫進行自動連接:config/autoload.php自動載入 $autoload['libraries'] = array('database');一些常用函數選擇資料$this->db->select();允許你在SQL查詢中寫 SELECT 部分。$this->db->where();$this->db->or_where();$this->db->where_in();允許你在SQL查詢中寫
Time of Update: 2016-07-21
die()停止程式運行,輸出內容exit是停止程式運行,不輸出內容return是傳回值die是遇到錯誤才停止exit是直接停止,並且不運行後續代碼,exit()可以顯示內容。return就是純粹的傳回值了,但是也不會運行後續代碼exit(0):正常運行程式並退出程式;exit(1):非正常運行導致退出程式;return():返回函數,若在主函數中,則會退出函數並返回一值。詳細說: 1. return返回函數值,是關鍵字; exit 是一個函數。 2.
Time of Update: 2016-07-21
PHP最佳化對於PHP的最佳化主要是對php.ini中的相關主要參數進行合理調整和設定,以下我們就來看看php.ini中的一些對效能影響較大的參數應該如何設定。 # vi /etc/php.ini(1) PHP函數禁用找到:disable_functions
Time of Update: 2016-07-21
最近在使用php的mongo 擴充進行資料統計計算,其中有一個時間戳記欄位,由於精確到了毫秒,長度有13位,但由於開始的時候是以字串的形式儲存:複製代碼 代碼如下:{ "_id" : ObjectId("504eea97e4b023cf38e34039"), "in_ts" : NumberLong("1347349143699"), "log" : { "guid" : "4D1F3079-7507-F4B0-E7AF-5432D5D8229D", "p" :
Time of Update: 2016-07-21
利用htaccess檔案可以很好的進行網站偽靜態,並且形成的目標地址與真正的靜態頁面幾乎一模一樣,如wangqu.html等,偽靜態可以非常好的結合SEO來提高網站的排名,並且也能給人一種穩定的印象。由於偽靜態必須要完全根據不同的網站進行不同的設定,因此,我們僅能簡單介紹其原理,給出幾個常用程式的樣本:若要通過htaccess使用偽靜態,則必須空間商支援Rewrite模組,該模組負責URL的重寫。否則即便是設定好了,也無法使用,並且還有可能出現500錯誤。下面是Discuz的偽靜態設定文本:#
Time of Update: 2016-07-21
以下是通過php的socket擴充模組實現的一個簡單的訊息處理伺服器端:綁定在一個原生連接埠,監聽用戶端的串連,接收資料並轉寄給寄件者之外的所有用戶端socket_server.php複製代碼 代碼如下:#!/usr/bin/env php//author:zhxiaif(!extension_loaded('sockets')){ die('the sockets extension is not loaded!');}const
Time of Update: 2016-07-21
1、const用於類成員變數定義,一旦定義且不能改變其值。define定義全域常量,在任何地方都可以訪問。2、define不能在類中定義而const可以。3、const不能在條件陳述式中定義常量複製代碼 代碼如下:if (...) { const FOO = 'BAR'; // invalid } but if (...) { define('FOO', 'BAR'); // valid }