Time of Update: 2018-12-08
其實這個很簡單,只不過我一直想用 ipv6-test 的API做一個擷取使用者IP地址的東西……無奈JSON擷取到的只是本機伺服器的IP。算了,不研究了,何況人家提供的widget也挺好用的。Google了一下,找到這段代碼,可以根據使用者環境擷取IP地址。 例如IPv6訪問 www.shiwo.de 則擷取到的是使用者的IPv6地址 p.s 前提是網站做了A和AAAA解析 複製代碼 代碼如下:<?php function getIP() /*擷取用戶端IP*/ { if
Time of Update: 2018-12-08
自己寫了個PHP結果集轉換成JSON格式的函數,可以直接調用:複製代碼 代碼如下:function RecordToJson($recordset) { $jstr='['; while($rs = $recordset->Fetch()) { //$nick = iconv("GBK",'utf-8',$rs['nick']);/*轉換為utf-8編碼*/ //TODO:遍曆結果集 $arr_keys=array_keys($rs); $jstr=$jstr.'{'; for($i=0;
Time of Update: 2018-12-08
第一種代碼:代碼量較少通過Regex擷取百度網盤的檔案真真實位址,來實現直鏈的效果將下面的代碼儲存為downbd.php複製代碼 代碼如下:<?php $canshu=$_SERVER["QUERY_STRING"]; if($canshu=="") { die("檔案不存在"); } else { $wangzhi="http://pan.baidu.com/share/link?".$canshu; $file=file_get_contents($wangzhi);
Time of Update: 2018-12-08
複製代碼 代碼如下:<? // Start snipit 1 $sql = "SELECT * from <table>"; $result = mysql_query($sql); while ($row = mysql_fetch_assoc($result)) { // do stuff with $row } mysql_data_seek($result, 0); //關鍵是這兒 while ($row = mysql_fetch_assoc($result)) {
Time of Update: 2018-12-08
例如: 複製代碼 代碼如下:<?php $a = 1; include 'b.inc'; ?> 這裡變數 $a 將會在包含檔案 b.inc 中生效。但是,在使用者自訂函數中,一個局部函數範圍將被引入。任何用於函數內部的變數按預設情況將被限制在局部函數範圍內,此時為局部變數。 PHP 中全域變數在函數中使用時必須申明為global。 在函數中使用global聲明的變數即為全域變數,可以在函數外使用。注意:global聲明變數時,不能直接對變數賦值,需要先聲明後賦值。
Time of Update: 2018-12-08
這裡有緩衝技術的簡單介紹:http://www.jb51.net/article/4965.htm php頁面緩衝主要用到的是ob系列函數,如ob_start(),ob_end_flush(),ob_get_contents() 下面是編碼部分。 1.初始化函數,一般是設定頁面緩衝路徑、快取檔案命名格式等,可按個人喜好自訂。這裡用到的識別ID是經加密的$_SERVER[REQUEST_URI]參數。這個函數中最後還有一個if判斷:若未過緩衝期,則載入快取檔案,否則載入源檔案。
Time of Update: 2018-12-08
資料庫中,存放文章的表中有“Tag”欄位,用來存放標籤。標籤之間用“,”分隔。比如“PHP,VB,隨筆”。 下面的實現代碼,將標籤從資料庫中搜出來,並格式化處理,使其以出現的次數為依據顯示出不同大小的文字串連。 其中的細節,不做解釋了! 觀念陳、方法笨、效率低的標籤雲的實現代碼如下: 複製代碼 代碼如下:/** * WNiaoBlog Tag Template ShowTag * * @package WNiaoBlog * * @subpackage Tag */ //Connect the
Time of Update: 2018-12-08
簡單解釋一些代碼: 第一個 ~(<[^>]+?>)~si 這個正則是匹配<………>中的內容。簡單說是所有的<標籤>。 第二個 ~<([a-z0-9]+)[^/>]*?/>~si 這個正則是匹配<……/>中的內容。是單閉合標籤 如<br /> 第三個 ~</([a-z0-9]+)[^/>]*?>~si 這個正則是匹配</......>中的內容。也就是結束標籤 如</a>
Time of Update: 2018-12-08
去年做過一個項目,要把使用者上傳的影像檔列出文字清單,當使用者點擊一個檔案名稱後,就可以顯示這個映像. 因為要考慮相容各種不同的映像格式, 我使用了GD庫, 判斷出具體是那種影像檔(MINE),再調用相應的image產生函數imagecreatefromXXX(),產生一個img,再將這個img以jpeg格式輸出至瀏覽器,雖然做出來了,但總覺得不滿意. 今天有機會重新考慮這個功能,在php手冊中發現幾行代碼,簡潔明快,完全能實現我要的功能,還不需要GD庫 複製代碼 代碼如下:<?php $
Time of Update: 2018-12-08
is_numeric:檢測是否為數字字串,可為負數和小數 ctype_digit:檢測字串中的字元是否都是數字,負數和小數會檢測不通過 注意,參數一定要是字串,如果不是字串,則會返回0/FASLE 下面是測試例子: 複製代碼 代碼如下:$a = 0001111222 ; var_dump($a); var_dump(is_numeric($a)); //true var_dump(ctype_digit($a)); //true $a = 0.1 ; var_dump($a);
Time of Update: 2018-12-08
流量統計功能 顯示效果: 總訪問量:399 今日流量:14 昨日流量:16 本代碼僅供學習交流,其中必有不妥之處。請見諒! -- -- 表的結構 `mycounter` -- 複製代碼 代碼如下:CREATE TABLE `mycounter` ( `id` int(11) NOT NULL auto_increment, `Counter` int(11) NOT NULL, `CounterLastDay` int(10) default NULL, `CounterToday` int(1
Time of Update: 2018-12-08
廢話不多說直接上代碼。 PHP FOR Smarty 複製代碼 代碼如下:* Name: time_ago * Purpose: 將時間戳記專為距目前時間的表現形式 * 1分鐘內按秒 * 1小時內按分鐘顯示 * 1天內按時分顯示 * 3天內以昨天,前天顯示 * 超過3天顯示具體日期 * * @author Peter Pan * @param int $time input int */ function smarty_modifier_time_ago($time) { $time_deff
Time of Update: 2018-12-08
下面是PHP memory_get_usage()使用樣本: 複製代碼 代碼如下:echo memory_get_usage(), '<br />'; //143952 $tmp = str_repeat('http://blog.micxp.com/', 4000); echo memory_get_usage(), '<br />'; //232048 unset($tmp); echo memory_get_usage(); //143952
Time of Update: 2018-12-08
加上會出什麼問題,不加會報什麼錯;所以在編譯PHP的時候除了必要的目錄指定,好多參數都沒有加……等我在安裝web程式的時候,才發現,很多參數是要加上的,但是我lnmp已經搭建好了,也不想重新編譯,重新安裝。。於是就在網上找到了此文一、添加FTP擴充1、找到原來的源碼包解壓一下如:php-5.2.13進入到到FTP的擴充目錄/root/lnmp/php-5.3.0/ext/ftp2、調用phpize程式產生編譯設定檔複製代碼 代碼如下:root@dns ftp]# /usr/local/php5/
Time of Update: 2018-12-08
特別是+運算子,他的意思是,將右邊的數組單元(去重複)追加到左邊數組的後面。 複製代碼 代碼如下:<?php echo "\r\n第一種情況\r\n"; $a=array(1,2,3,4,5,6); $b=array(7,8,9); $c=array_merge ($a,$b); print_r($c); $c=$a+$b; print_r($c); $c=$b+$a; print_r($c); echo "\r\n第二種情況\r\n"; $a=array('a','b','c','d',
Time of Update: 2018-12-08
一、autoload機制概述 在使用PHP的OO模式開發系統時,通常大家習慣上將每個類的實現都存放在一個單獨的檔案裡,這樣會很容易實現對類進行複用,同時將來維護時也很便利。這也是OO設計的基本思想之一。在PHP5之前,如果需要使用一個類,只需要直接使用include/require將其包含進來即可。 下面是一個實際的例子: 複製代碼 代碼如下:/* Person.class.php */ <?php class Person { var $name, $age; function
Time of Update: 2018-12-08
主要功能是根據貝貝的出生日期來顯示貝貝現在多大了,即時顯示貝貝的成長。 用目前時間減去出生的日期,但是可以顯示出來幾歲,幾個月,和幾天。 天的演算法有點問題,沒有考慮到大小月和2月份。 複製代碼 代碼如下:function getDays() { putenv("TZ=Asia/Chongqing"); $by = 2006; $bm = 7; $bd = 7; $rday=""; $today = getdate(); $by = $today[year] - $by; $bm =
Time of Update: 2018-12-08
複製代碼 代碼如下:class Foo { private $name = 'hdj'; public function getName(){ return $this->name; } } class Bar extends Foo { public $name = 'deeka'; } $bar = new Bar; var_dump($bar->name); var_dump($bar->getName()); 存取控制 對屬性或方法的存取控制,是通過在前面添加關鍵字
Time of Update: 2018-12-08
很顯然file_exists是受了asp的影響,因為asp不但有fileExists還有folderExists,driverExists,那麼PHP中file_exists是什麼意思呢? PHP的 file_exists = is_dir + is_file 它既可以判斷檔案是否存在,又可以判斷目錄是否存在。但這樣一個全面的函數執行效率非常低,就像asp中request不指定是form,還是get,cookies,所以結論是: ◦如果要判斷目錄是否存在,請用獨立函數
Time of Update: 2018-12-08
SESSION與COOKIE區別: Session 將資訊儲存在伺服器上.伺服器在接受到唯一的SESSION_ID後,根據這個ID擷取相關資料,然後將資訊傳遞到用戶端(瀏覽器). Cookie 是將所有資訊以文本的形式存在本地檔案,並由用戶端(瀏覽器)進行管理與維護. 因為Session 資料存放區在server端,所以遠程client無法對資料進行修改;而Cookie儲存在client本地,容易被擷取和篡改.所以Session安全性較高. SESSION 介紹: PHP5