Time of Update: 2016-11-30
代碼如下: <?php /* <?xml version="1.0" encoding="utf-8"?> <article> <item> <title name="t1">11</title> <content>content1</content> <pubdate>2009-10-11</pubdate>
Time of Update: 2016-11-30
得到HTTP_USER_AGENT 的方法很簡單,比如php代碼: 複製代碼 代碼如下: <?php print_r($_SERVER); ?> 複製代碼 代碼如下: <?php print_r($_SERVER['HTTP_USER_AGENT']); ?> 這兩種都可以得到User-Agents和IP等資訊,最好配合Regex,對資訊進行篩選剔除。 ————? User-Agents列表————- Internet Explorer 6
Time of Update: 2016-11-30
步驟如下: 1. 進到對應擴充目錄 # cd /usr/local/src/php-5.2.12/ext/curl 2. 調用phpize程式產生編譯設定檔 # /usr/local/php5/bin/phpize 3. 調用configure產生Makefile檔案,然後調用make編譯,make install安裝 # ./configure -with-curl=/usr/local/curl -with-php-config=/usr/local/php5/bin/php-config#
Time of Update: 2016-11-30
關於應用中遇到的一些問題及解決辦法,做一些記錄,以備後用。 1、關於層的絕對位置。 有兩個div層,其中main類div是整體的層,cloud類div是絕對位置層,實現的效果是在螢幕右上方顯示一個雲彩的gif圖片。div布局代碼如下: 複製代碼 代碼如下: <div class="cloud"></div> <div class="main"> ... </div>
Time of Update: 2016-11-30
代碼如下: //date:2011-08-05 class RunTime//頁面執行時間類 { private $starttime;//頁面開始執行時間 private $stoptime;//頁面結束執行時間 private $spendtime;//頁面執行花費時間 function getmicrotime()//擷取返回當前微秒數的浮點數 { list($usec,$sec)=explode(" ",microtime()); return
Time of Update: 2016-11-30
<?phpfunctiontep_get_ip_address(){if(isset($_SERVER)){if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])){$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];}elseif(isset($_SERVER['HTTP_CLIENT_IP'])){$ip=$_SERVER['HTTP_CLIENT_IP'];}else{
Time of Update: 2016-11-30
昨天和一個前同事聊天,各種吐槽PHP,吐槽Swoole,他認為PHP到處是坑,PHP局限很大。PHP+Swoole不適合做高並發伺服器,C+Swoole才是最好的方案。C++有各種資料結構,C++可以開線程,C++可以共用對象。看來有必要好好得說明一下了。HP比C/C++或Java少了什嗎?多線程,多線程,多線程……是的。PHP比C/C++、Java少了多線程。PHP只有多進程的方案,所以PHP裡的全域變數和對象不是共用的、資料結構也不能跨進程操作、Socket檔案描述符不能共用等等。所以PHP
Time of Update: 2016-11-30
//--------------------//基本資料結構//--------------------//二分尋找(數組裡尋找某個元素)functionbin_sch($array,$low,$high,$k){if($low<=$high){$mid=intval(($low+$high)/2);if($array[$mid]==$k){return$mid;}elseif($k<$array[$mid]){returnbin_sch($array,$low,$mid-1,$k)
Time of Update: 2016-11-30
複製代碼 代碼如下: $ss_log_level = 0; $ss_log_filename = /tmp/ss-log; $ss_log_levels = array( NONE => 0, ERROR => 1, INFO => 2, DEBUG => 3 ); //設定記錄層級 function ss_log_set_level ($level = ERROR) { global $ss_log_level; $ss_
Time of Update: 2016-11-30
PHP繼承*NIX的一貫傳統,完全支援正規運算式的處理。正規運算式提供了一種進階的,但不直觀的字串匹配和處理的方法。用過PERL的正規運算式的朋友都知道,正規運算式的功能非常強大,但學起來不是那麼容易。 比如:^.+@.+\..+$
Time of Update: 2016-11-30
在 php.ini 中找到 session.save_path 將值設定為 session.save_path = '3;/tmp/session'; 即可開啟三級目錄儲存session。但是php不會自動組建目錄結構,這時可以藉助源碼包 ext/session 目錄下的 mod_files.sh 來組建目錄 $ bash mod_files.sh /tmp/session 3
Time of Update: 2016-11-30
最近想用php寫一個爬蟲,就需要解析html,在sourceforge上找到一個項目叫做PHP Simple HTML DOM Parser,它可以以類似jQuery的方式通過css選取器來返回指定的DOM元素,功能十分強大。 首先要在程式的開始引入simple_html_dom.php這個檔案 複製代碼 代碼如下: include_once('simple_html_dom.php'); PHP Simple HTML DOM Parser提供了3種方式來建立DOM對象
Time of Update: 2016-11-30
如微博 這看起來更加人性化,好吧,上代碼 代碼如下: <?php class timeAgo { static $timeagoObject; private $rustle; private $unit; private function __construct() { } private function __clone(){ } public static function getObject() { if(! (self::$timeagoObject instanceof
Time of Update: 2016-11-30
代碼如下: <?php class session { static $sessionObject; /* $_SESSION['user'] == 0 , don't work . * == 1 , he is really user . */ private function __construct() { if(! ( isset($_SESSION['user']) && $_SESSION['user']==
Time of Update: 2016-11-30
瞭解如何使用 PHP 的各種檔案函數。查看諸如 fopen、fclose 和 feof 之類的基本檔案函數;瞭解諸如 fgets、fgetss 和 fscanf 之類的讀取函數。並且發現用一兩行代碼處理整個檔案的函數。讓我們算一算有多少種方法處理諸如 PHP 之類的現代程式設計語言的樂趣之一就是有大量的選項可用。PHP 可以輕鬆地贏得 Perl 的座右銘“There's more than one way to do
Time of Update: 2016-11-30
團隊開發中,遵循一個合理、清晰的Git使用流程,是非常重要的。 否則,每個人都提交一堆雜亂無章的commit,項目很快就會變得難以協調和維護。 下面是ThoughtBot 的Git使用規範流程。我從中學到了很多,推薦你也這樣使用Git。第一步:建立分支 首先,每次開發新功能,都應該建立一個單獨的分支(這方面可以參考《Git分支管理原則》)。# 擷取主幹最新代碼$ git checkout master$ git pull# 建立一個開發分支myfeature$ git checkout -
Time of Update: 2016-11-30
調用方式如下:其中DebugStr這個函數就是類似一個echo。 複製代碼 代碼如下: DebugStr('$Adv->getContentById($id); $id為廣告編號, 僅調用一條,返回內容為字串'); echo Adv::getContentById(35); DebugStr('$Adv->getContentByIdJS($id); $id為廣告編號, 僅調用一條,返回內容為JS字串'); echo
Time of Update: 2016-11-30
代碼如下: <?php /* * 流程式控制制 * * 一、順序結構 * 二、分支結構--條件結構--選擇結構 * 1.單路分支 * //條件bool,true或false,> < == !- & || ! * if(條件) * 執行下面一條語句 * if(條件) * { * 程式碼片段; * 程式碼片段; * } * * 2.雙路分支 * 使用else從句 * * if(條件) * 執行一條語句 * else * 執行一條語句 * if(條件){ * 一條或多條代碼
Time of Update: 2016-11-30
我們時常會聽到團隊成員說:“這個項目搞代碼審查簡直是在浪費時間。”“我沒時間做代碼審查。”“發布會延遲,是因為我那個卑鄙的同事還沒有審查過My Code。”“你能相信我的同事居然要求我改My
Time of Update: 2016-11-30
代碼如下: <?php /*運算子號(PHP)操作符號 * * 按運算子號功能分為: * 一、算術運算子 + - * / % ++ -- * 二、字串運算子 . 串連運算子 * 三、賦值運算子 = += -= *= /= %= .= * 四、比較子 > < >= <= == === != <> !== * 比較子---條件運算子---關係運算子 * 比較後的結果只有一種:boolean true false * ===