久久er精品视频_先锋影院在线亚洲_影音先锋一区_性色av香蕉一区二区

中山php|最優(yōu)網(wǎng)絡(luò)中山做網(wǎng)站 中山php建站

最優(yōu)良人

2011/08/13 at 18:04

php字符串首字母轉(zhuǎn)換大小寫(xiě)

首字母變大寫(xiě):ucwords()

<?php
$foo = 'hello world!';
$foo = ucwords($foo); // Hello World!

$bar = 'HELLO WORLD!';
$bar = ucwords($bar); // HELLO WORLD!
$bar = ucwords(strtolower($bar)); // Hello World!
?>

第一個(gè)詞首字母變大寫(xiě):ucfirst()

<?php
$foo = 'hello world!';
$foo = ucfirst($foo); // Hello world!

$bar = 'HELLO WORLD!';
$bar = ucfirst($bar); // HELLO WORLD!
$bar = ucfirst(strtolower($bar)); // Hello world!
?>

第一個(gè)詞首字母小寫(xiě)lcfirst()

<?php
$foo = 'HelloWorld';
$foo = lcfirst($foo); // helloWorld

$bar = 'HELLO WORLD!';
$bar = lcfirst($bar); // hELLO WORLD!
$bar = lcfirst(strtoupper($bar)); // hELLO WORLD!
?>

字母變大寫(xiě):strtoupper()

字母變小寫(xiě):strtolower()

標(biāo)簽:,
comments Comments (19)    -
2011/08/13 at 12:44

Fleaphp 關(guān)閉日志服務(wù)

fleaphp框架日志服務(wù)開(kāi)啟的時(shí)候回產(chǎn)生大量的日志文件,對(duì)于大部分寸土寸金的虛擬空間來(lái)說(shuō)是個(gè)不小的壓力,只要重新定義一下'logEnabled'這個(gè)配置參數(shù),改為false就可以關(guān)閉了

標(biāo)簽:,
comments Comments (406)    -
2011/08/08 at 09:08

模仿蜘蛛抓取網(wǎng)站內(nèi)容

function baiduSpider($url){
$ch = curl_init();
$user_agent = "Baiduspider+(+http://www.baidu.com/search/spider.htm)";//這里模擬的是百度蜘蛛
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_REFERER, $url);//這里寫(xiě)一個(gè)來(lái)源地址,可以寫(xiě)要抓的頁(yè)面的首頁(yè)
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
$temp=curl_exec($ch);
return $temp;
}
php必須開(kāi)啟curl擴(kuò)展,把$url換成可以寫(xiě)要抓的頁(yè)面就可以了

comments Comments (6)    -
2011/08/07 at 16:29

Fleaphp訪(fǎng)問(wèn)出錯(cuò)返回404頁(yè)面的方法

配置文件里有項(xiàng) : 'dispatcherFailedCallback' , 他用來(lái)設(shè)置當(dāng)調(diào)度器失敗時(shí)調(diào)用的方法。
應(yīng)用很靈活, 舉個(gè)例子, 當(dāng)控制器或控制器動(dòng)作不存在就跳到定制的404頁(yè)面。

FLEA::setAppInf('dispatcherFailedCallback', 'onDispatcherFailed');

function onDispatcherFailed

{

redirect('404.html');

}

 

dispatcherFailedCallback的配置分2種情況,如果當(dāng)前訪(fǎng)問(wèn)的控制器、動(dòng)作不存:'dispatcherFailedCallback' => 'onDispatcherFailedCallback',
如果用戶(hù)設(shè)置了RABC訪(fǎng)問(wèn)控制,訪(fǎng)問(wèn)無(wú)法訪(fǎng)問(wèn)的動(dòng)作時(shí):'dispatcherAuthFailedCallback' => 'onAuthFailedCallback',
上面onDispatcherFailedCallback、onAuthFailedCallback是出錯(cuò)的時(shí)候調(diào)用的函數(shù),你可以在index.php種定義這2個(gè)函數(shù)就OK了。
例如:
function onAuthFailedCallback($controller,$action)
{

redirect(url('Login','Index')); // 這里是驗(yàn)證失敗時(shí),讓用戶(hù)去登錄
}

標(biāo)簽:,
comments Comments (414)    -
2011/08/07 at 02:10

PHP顯示客戶(hù)端IP與服務(wù)器IP

打印客戶(hù)端IP:echo $_SERVER['REMOTE_ADDR']; 或者: getenv('REMOTE_ADDR');

當(dāng)時(shí)當(dāng)客戶(hù)端使用代理訪(fǎng)問(wèn),那取到的是代理服務(wù)器的 IP 地址,而不是真正的客戶(hù)端 IP 地址。所以比較準(zhǔn)確的獲取客戶(hù)ip的方法是:

function getip(){
if (getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')){
$ip = getenv('HTTP_CLIENT_IP');
}else if (getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')){
$ip = getenv('HTTP_X_FORWARDED_FOR');
}else if (getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')){
$ip = getenv('REMOTE_ADDR');
}else if (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')){
$ip = $_SERVER['REMOTE_ADDR'];
}
preg_match("/[\d\.]{7,15}/", $ip, $temp);
$ip = $temp[0] ? $temp[0] : 'unknown';
unset($temp);
return $ip;
}

打印服務(wù)器IP:echo gethostbyname(www.baidu.com);

打印服務(wù)器IP列表:echo gethostbynamel(www.baidu.com);

通過(guò)ip地址獲取主機(jī)名:$hostname = gethostbyaddr('58.62.246.55');

標(biāo)簽:, ,
comments Comments (433)    -
2011/08/07 at 02:08

關(guān)于域名的一些常用設(shè)置的說(shuō)明

建站名詞解釋?zhuān)篋NS A記錄 NS記錄 MX記錄 CNAME記錄 TXT記錄 TTL值 PTR值 泛域名 泛解析 域名綁定 域名轉(zhuǎn)向

1. DNS
DNS:Domain Name System 域名管理系統(tǒng) 域名是由圓點(diǎn)分開(kāi)一串單詞或縮寫(xiě)組成的,每一個(gè)域名都對(duì)應(yīng)一個(gè)惟一的IP地址,這一命名的方法或這樣管理域名的系統(tǒng)叫做域名管理系統(tǒng)。
DNS:Domain Name Server 域名服務(wù)器 域名雖然便于人們記憶,但網(wǎng)絡(luò)中的計(jì)算機(jī)之間只能互相認(rèn)識(shí)IP地址,它們之間的轉(zhuǎn)換工作稱(chēng)為域名解析,域名解析需要由專(zhuān)門(mén)的域名解析服務(wù)器來(lái)完成,DNS 就是進(jìn)行域名解析的服務(wù)器。
查看DNS更詳細(xì)的解釋

2. A記錄
A (Address)記錄是用來(lái)指定主機(jī)名(或域名)對(duì)應(yīng)的IP地址記錄。用戶(hù)可以將該域名下的網(wǎng)站服務(wù)器指向到自己的web server上。同時(shí)也可以設(shè)置域名的子域名。通俗來(lái)說(shuō)A記錄就是服務(wù)器的IP,域名綁定A記錄就是告訴DNS,當(dāng)你輸入域名的時(shí)候給你引導(dǎo)向設(shè)置在DNS的A記錄所對(duì)應(yīng)的服務(wù)器。
簡(jiǎn)單的說(shuō),A記錄是指定域名對(duì)應(yīng)的IP地址。

3. NS記錄
NS(Name Server)記錄是域名服務(wù)器記錄,用來(lái)指定該域名由哪個(gè)DNS服務(wù)器來(lái)進(jìn)行解析。
您注冊(cè)域名時(shí),總有默認(rèn)的DNS服務(wù)器,每個(gè)注冊(cè)的域名都是由一個(gè)DNS域名服務(wù)器來(lái)進(jìn)行解析的,DNS服務(wù)器NS記錄地址一般以以下的形式出現(xiàn):
ns1.domain.com、ns2.domain.com等。
簡(jiǎn)單的說(shuō),NS記錄是指定由哪個(gè)DNS服務(wù)器解析你的域名。

4. MX記錄
MX(Mail Exchanger)記錄是郵件交換記錄,它指向一個(gè)郵件服務(wù)器,用于電子郵件系統(tǒng)發(fā)郵件時(shí)根據(jù)收信人的地址后綴來(lái)定位郵件服務(wù)器。例如,當(dāng)Internet上的某用戶(hù)要發(fā)一封信給 user@mydomain.com 時(shí),該用戶(hù)的郵件系統(tǒng)通過(guò)DNS查找mydomain.com這個(gè)域名的MX記錄,如果MX記錄存在, 用戶(hù)計(jì)算機(jī)就將郵件發(fā)送到MX記錄所指定的郵件服務(wù)器上。

5. CNAME記錄
CNAME(Canonical Name )別名記錄,允許您將多個(gè)名字映射到同一臺(tái)計(jì)算機(jī)。通常用于同時(shí)提供WWW和MAIL服務(wù)的計(jì)算機(jī)。例如,有一臺(tái)計(jì)算機(jī)名為"host.mydomain.com"(A記錄),它同時(shí)提供WWW和MAIL服務(wù),為了便于用戶(hù)訪(fǎng)問(wèn)服務(wù)。可以為該計(jì)算機(jī)設(shè)置兩個(gè)別名(CNAME):WWW和MAIL, 這兩個(gè)別名的全稱(chēng)就"www.mydomain.com"和"mail.mydomain.com",實(shí)際上他們都指向 "host.mydomain.com"。

6. TXT記錄
TXT記錄,一般指某個(gè)主機(jī)名或域名的說(shuō)明,如:admin IN TXT "管理員, 電話(huà):XXXXXXXXXXX",mail IN TXT "郵件主機(jī),存放在xxx , 管理人:AAA",Jim IN TXT "contact: abc@mailserver.com",也就是您可以設(shè)置 TXT 內(nèi)容以便使別人聯(lián)系到您。

TXT的應(yīng)用之一,SPF(Sender Policy Framework)反垃圾郵件。SPF是跟DNS相關(guān)的一項(xiàng)技術(shù),它的內(nèi)容寫(xiě)在DNS的TXT類(lèi)型的記錄里面。MX記錄的作用是給寄信者指明某個(gè)域名的郵件服務(wù)器有哪些。SPF的作用跟MX相反,它向收信者表明,哪些郵件服務(wù)器是經(jīng)過(guò)某個(gè)域名認(rèn)可會(huì)發(fā)送郵件的。SPF的作用主要是反垃圾郵件,主要針對(duì)那些發(fā)信人偽造域名的垃圾郵件。例如:當(dāng)郵件服務(wù)器收到自稱(chēng)發(fā)件人是spam@gmail.com的郵件,那么到底它是不是真的gmail.com的郵件服務(wù)器發(fā)過(guò)來(lái)的呢,我們可以查詢(xún)gmail.com的SPF記錄,以此防止別人偽造你來(lái)發(fā)郵件。

7. TTL值
TTL(Time-To-Live)原理:TTL是IP協(xié)議包中的一個(gè)值,它告訴網(wǎng)絡(luò)路由器包在網(wǎng)絡(luò)中的時(shí)間是否太長(zhǎng)而應(yīng)被丟棄。有很多原因使包在一定時(shí)間內(nèi)不能被傳遞到目的地。例如,不正確的路由表可能導(dǎo)致包的無(wú)限循環(huán)。一個(gè)解決方法就是在一段時(shí)間后丟棄這個(gè)包,然后給發(fā)送者一個(gè)報(bào)文,由發(fā)送者決定是否要重發(fā)。TTL的初值通常是系統(tǒng)缺省值,是包頭中的8位的域。TTL的最初設(shè)想是確定一個(gè)時(shí)間范圍,超過(guò)此時(shí)間就把包丟棄。由于每個(gè)路由器都至少要把TTL域減一,TTL通常表示包在被丟棄前最多能經(jīng)過(guò)的路由器個(gè)數(shù)。當(dāng)記數(shù)到0時(shí),路由器決定丟棄該包,并發(fā)送一個(gè)ICMP報(bào)文給最初的發(fā)送者。

簡(jiǎn)單的說(shuō),TTL就是一條域名解析記錄在DNS服務(wù)器中的存留時(shí)間。當(dāng)各地的DNS服務(wù)器接受到解析請(qǐng)求時(shí),就會(huì)向域名指定的NS服務(wù)器發(fā)出解析請(qǐng)求從而獲得解析記錄;在獲得這個(gè)記錄之后,記錄會(huì)在DNS服務(wù)器中保存一段時(shí)間,這段時(shí)間內(nèi)如果再接到這個(gè)域名的解析請(qǐng)求,DNS服務(wù)器將不再向NS服務(wù)器發(fā)出請(qǐng)求,而是直接返回剛才獲得的記錄,而這個(gè)記錄在DNS服務(wù)器上保留的時(shí)間,就是TTL值。

TTL值設(shè)置的應(yīng)用:
一是增大TTL值,以節(jié)約域名解析時(shí)間,給網(wǎng)站訪(fǎng)問(wèn)加速。
一般情況下,域名的各種記錄是極少更改的,很可能幾個(gè)月、幾年內(nèi)都不會(huì)有什么變化。我們完全可以增大域名記錄的TTL值讓記錄在各地DNS服務(wù)器中緩存的時(shí)間加長(zhǎng),這樣在更長(zhǎng)的一段時(shí)間內(nèi),我們?cè)L問(wèn)這個(gè)網(wǎng)站時(shí),本地ISP的DNS服務(wù)器就不需要向域名的NS服務(wù)器發(fā)出解析請(qǐng)求,而直接從緩存中返回域名解析記錄。
二是減小TTL值,減少更換空間時(shí)的不可訪(fǎng)問(wèn)時(shí)間。
更換空間99.9%會(huì)有DNS記錄更改的問(wèn)題,因?yàn)榫彺娴膯?wèn)題,新的域名記錄在有的地方可能生效了,但在有的地方可能等上一兩天甚至更久才生效。結(jié)果就是有的人可能訪(fǎng)問(wèn)到了新服務(wù)器,有的人訪(fǎng)問(wèn)到了舊服務(wù)器。僅僅是訪(fǎng)問(wèn)的話(huà),這也不是什么大問(wèn)題,但如果涉及到了郵件發(fā)送,這個(gè)就有點(diǎn)麻煩了,說(shuō)不定哪封重要信件就被發(fā)送到了那已經(jīng)停掉的舊服務(wù)器上。
為了盡可能的減小這個(gè)各地的解析時(shí)間差,合理的做法是:
第一步,先查看域名當(dāng)前的TTL值,我們假定是1天。
第二步,修改TTL值為可設(shè)定的最小值,可能的話(huà),建議為1分鐘,就是60。
第三步,等待一天,保證各地的DNS服務(wù)器緩存都過(guò)期并更新了記錄。
第四步,設(shè)置修改新記錄,這個(gè)時(shí)候各地的DNS就能以最快的速度更新到新的記錄。
第五步,確認(rèn)各地的DNS已經(jīng)更新完成后,把TTL值設(shè)置成您想要的值。

一般操作系統(tǒng)的默認(rèn)TTL值如下:
TTL=32 Windows 9x/Me
TTL=64 LINUX
TTL=128 Windows 200x/XP
TTL=255 Unix

8. PTR值
PTR是pointer的簡(jiǎn)寫(xiě),用于將一個(gè)IP地址映射到對(duì)應(yīng)的域名,也可以看成是A記錄的反向,IP地址的反向解析。
PTR主要用于郵件服務(wù)器,比如郵箱AAA@XXX.com給郵箱BBB@yahoo.com發(fā)了一封郵件,yahoo郵件服務(wù)器接到郵件時(shí)會(huì)查看這封郵件的頭文件,并分析是由哪個(gè)IP地址發(fā)出來(lái)的,然后根據(jù)這個(gè)IP地址進(jìn)行反向解析,如果解析結(jié)果對(duì)應(yīng)XXX.com的IP地址就接受這封郵件,反之則拒絕接收這封郵件。

9. 泛域名與泛解析
泛域名是指在一個(gè)域名根下,以 *.Domain.com的形式表示這個(gè)域名根所有未建立的子域名。
泛解析是把*.Domain.com的A記錄解析到某個(gè)IP 地址上,通過(guò)訪(fǎng)問(wèn)任意的前綴.domain.com都能訪(fǎng)問(wèn)到你解析的站點(diǎn)上。

10. 域名綁定
域名綁定是指將域名指向服務(wù)器IP的操作。

11. 域名轉(zhuǎn)向
域名轉(zhuǎn)向又稱(chēng)為域名指向或域名轉(zhuǎn)發(fā),當(dāng)用戶(hù)地址欄中輸入您的域名時(shí),將會(huì)自動(dòng)跳轉(zhuǎn)到您所指定的另一個(gè)域名。一般是使用短的好記的域名轉(zhuǎn)向復(fù)雜難記的域名。

標(biāo)簽:
comments Comments (108)    -
2011/08/07 at 02:07

PHP static靜態(tài)變量

什么是static靜態(tài)變量?

靜態(tài)變量 類(lèi)型說(shuō)明符是static。

靜態(tài)變量屬于靜態(tài)存儲(chǔ)方式,其存儲(chǔ)空間為內(nèi)存中的靜態(tài)數(shù)據(jù)區(qū)(在靜態(tài)存儲(chǔ)區(qū)內(nèi)分配存儲(chǔ)單元),該區(qū)域中的數(shù)據(jù)在整個(gè)程序的運(yùn)行期間一直占用這些存儲(chǔ)空間(在程序整個(gè)運(yùn)行期間都不釋放),也可以認(rèn)為是其內(nèi)存地址不變,直到整個(gè)程序運(yùn)行結(jié)束(相反,而auto自動(dòng)變量,即動(dòng)態(tài)局部變量,屬于動(dòng)態(tài)存儲(chǔ)類(lèi)別,占動(dòng)態(tài)存儲(chǔ)空間,函數(shù)調(diào)用結(jié)束后即釋放)。靜態(tài)變量雖在程序的整個(gè)執(zhí)行過(guò)程中始終存在,但是在它作用域之外不能使用。

另外,屬于靜態(tài)存儲(chǔ)方式的量不一定就是靜態(tài)變量。 例如:外部變量(在PHP中指全局變量)雖屬于靜態(tài)存儲(chǔ)方式,但不一定是靜態(tài)變量,必須由 static加以定義后才能成為靜態(tài)外部變量,或稱(chēng)靜態(tài)全局變量。

所有的全局變量都是靜態(tài)變量,而局部變量只有定義時(shí)加上類(lèi)型修飾符static,才為局部靜態(tài)變量。

靜態(tài)變量可以在任何可以申請(qǐng)的地方申請(qǐng),一旦申請(qǐng)成功后,它將不再接受其他的同樣申請(qǐng)。

靜態(tài)變量并不是說(shuō)其就不能改變值,不能改變值的量叫常量。 其擁有的值是可變的 ,而且它會(huì)保持最新的值。說(shuō)其靜態(tài),是因?yàn)樗粫?huì)隨著函數(shù)的調(diào)用和退出而發(fā)生變化。即上次調(diào)用函數(shù)的時(shí)候,如果我們給靜態(tài)變量賦予某個(gè)值的話(huà),下次函數(shù)調(diào)用時(shí),這個(gè)值保持不變。

一、靜態(tài)局部變量:

1、Static類(lèi)內(nèi)部變量同auto自動(dòng)變量(即未加 Static 聲明的局部變量)一樣,是某個(gè)特定函數(shù)的局部變量,即只能在定義該變量的函數(shù)內(nèi)使用該變量,2者作用域相同;兩者的不同在于:auto自動(dòng)變量會(huì)隨著函數(shù)被調(diào)用和退出而存在和消失,而static類(lèi)局部變量不會(huì),它不管其所在的函數(shù)是否被調(diào)用,都將一直存在;不過(guò),盡管該變量還繼續(xù)存在,但不能使用它。倘若再次調(diào)用定義它的函數(shù)時(shí),它又可繼續(xù)使用,而且保存了前次被調(diào)用后留下的值。換言之,Static類(lèi)型的內(nèi)部變量是一種只能在某個(gè)特定函數(shù)中使用,但一直占據(jù)存儲(chǔ)空間的變量。

2、函數(shù)體內(nèi)如果在定義靜態(tài)變量的同時(shí)進(jìn)行了初始化,則以后程序不再進(jìn)行初始化操作(出現(xiàn)在函數(shù)內(nèi)部的基本類(lèi)型的的靜態(tài)變量初始化語(yǔ)句只有在第一次調(diào)用才執(zhí)行)。而對(duì)自動(dòng)變量賦初值是在函數(shù)調(diào)用時(shí)進(jìn)行,每調(diào)用一次函數(shù)重新給一次初值,相當(dāng)于執(zhí)行一次賦值語(yǔ)句。

3、靜態(tài)局部變量的初始化表達(dá)式必須是一個(gè)常量或者常量表達(dá)式。即使局部靜態(tài)變量定義時(shí)沒(méi)有賦初值,系統(tǒng)會(huì)自動(dòng)賦初值0(對(duì)數(shù)值型變量)或空字符(對(duì)字符變量);靜態(tài)變量的初始值為0。而對(duì)自動(dòng)變量auto來(lái)說(shuō),如果不賦初值則它的值將是個(gè)不確定的值。

4、當(dāng)多次調(diào)用一個(gè)函數(shù)且要求在調(diào)用之間保留某些變量的值時(shí),可考慮采用靜態(tài)局部變量。雖然用全局變量也可以達(dá)到上述目的,但全局變量有時(shí)會(huì)造成意外的副作用,因此仍以采用局部靜態(tài)變量為宜。

注:局部靜態(tài)變量占用內(nèi)存時(shí)間較長(zhǎng),并且可讀性差,因此,除非必要,盡量避免使用局部靜態(tài)變量。

二、靜態(tài)全局變量

全局變量(外部變量)的說(shuō)明之前再冠以static 就構(gòu)成了靜態(tài)的全局變量。
全局變量本身就是靜態(tài)存儲(chǔ)方式,靜態(tài)全局變量當(dāng)然也是靜態(tài)存儲(chǔ)方式。
這兩者在存儲(chǔ)方式上并無(wú)不同。

這兩者的區(qū)別雖在于:
1、非靜態(tài)全局變量的作用域是整個(gè)源程序,當(dāng)一個(gè)源程序由多個(gè)源文件組成時(shí),非靜態(tài)的全局變量在各個(gè)源文件中都是有效的。
2、靜態(tài)全局變量則限制了其作用域, 即只在定義該變量的源文件內(nèi)有效,在同一源程序的其它源文件中不能使用它。

從以上分析可以看出————
把局部變量改變?yōu)殪o態(tài)變量后是改變了它的存儲(chǔ)方式,即改變了它的生存期。
把全局變量改變?yōu)殪o態(tài)變量后是改變了它的作用域,限制了它的使用范圍。static靜態(tài)變量會(huì)被放在程序的全局存儲(chǔ)區(qū)中(即在程序的全局?jǐn)?shù)據(jù)區(qū),而不是在堆棧中分配,所以不會(huì)導(dǎo)致堆棧溢出),這樣可以在下一次調(diào)用的時(shí)候還可以保持原來(lái)的賦值。這一點(diǎn)是它與堆棧變量和堆變量的區(qū)別。

三應(yīng)用于PHP中

//--------------如何理解static靜態(tài)變量-----------。
//普通局部變量
function local(){
$loc = 0; //這樣,如果直接不給初值0是錯(cuò)誤的。
++$loc;
echo $loc.'<br>';
}
local(); //1
local(); //1
local(); //1
echo '===================================<br/>';
//static靜態(tài)局部變量
function static_local(){
static $local = 0 ; //此處可以不賦0值
$local++;
echo $local.'<br>';
}
static_local(); //1
static_local(); //2
static_local(); //3
//echo $local; 注意雖然靜態(tài)變量,但是它仍然是局部的,在外不能直接訪(fǎng)問(wèn)的。
echo '=======================================<br>';
//static靜態(tài)全局變量(實(shí)際上:全局變量本身就是靜態(tài)存儲(chǔ)方式,所有的全局變量都是靜態(tài)變量)
function static_global(){
global $glo; //此處,可以不賦值0,當(dāng)然賦值0,后每次調(diào)用時(shí)其值都為0,每次調(diào)用函數(shù)得到的值都會(huì)是1,但是不能想當(dāng)然的寫(xiě)上"static"加以修飾,那樣是錯(cuò)誤的.
$glo++;
echo $glo.'<br>';
}
static_global(); //1
static_global(); //2
static_global(); //3

標(biāo)簽:
comments Comments (330)    -
2011/08/07 at 02:01

php過(guò)濾敏感字符的一些相關(guān)函數(shù)--魔法函數(shù)應(yīng)用

一,首先,先來(lái)看一下php.ini的兩個(gè)配置參數(shù)

magic_quotes_gpc "1" PHP_INI_PERDIR PHP_INI_ALL in PHP <= 4.2.3. Removed in PHP 6.0.0.

作用范圍是:WEB客戶(hù)服務(wù)端;
作用時(shí)間:請(qǐng)求開(kāi)始是,例如當(dāng)腳本運(yùn)行時(shí)

magic_quotes_runtime "0" PHP_INI_ALL Removed in PHP 6.0.0.

作用范圍是:影響從文件中讀取的數(shù)據(jù)或從數(shù)據(jù)庫(kù)查詢(xún)得到的數(shù)據(jù)。

以下是一些常用到的方法:

get_magic_quotes_gpc(void)

本函數(shù)取得 PHP 環(huán)境配置的變量 magic_quotes_gpc (GPC, Get/Post/Cookie) 值。

  返回 0 表示關(guān)閉本功能;

  返回 1 表示本功能打開(kāi)。

  當(dāng) magic_quotes_gpc 打開(kāi)時(shí),所有的 ' (單引號(hào)), " (雙引號(hào)), \ (反斜線(xiàn)) and 空字符會(huì)自動(dòng)轉(zhuǎn)為含有反斜線(xiàn)的溢出字符。

應(yīng)用:

由于該參數(shù)不支持在php文件進(jìn)行設(shè)置,如果通過(guò)本函數(shù)取得的變量magic_quotes_gpc 的值為false,我們可以
利用addslashes()人工使用反斜線(xiàn)引用字符串

$var = get_magic_quotes_gpc()?$var:addslashes($var);

相反,如果通過(guò)本函數(shù)取得的變量magic_quotes_gpc 的值為true,我們希望字符串不被轉(zhuǎn)義,那么可以利用stripslashes()去除自動(dòng)添加的反斜杠

get_magic_quotes_runtime()

一般情況下,應(yīng)當(dāng)將其關(guān)閉,否則從數(shù)據(jù)庫(kù)讀取出來(lái)的數(shù)據(jù)單引號(hào)、雙引號(hào)和反斜杠都會(huì)被加上\,導(dǎo)致顯示不正常。像Discuz,PHPWind都在公共文件的頭部加上一句

set_magic_quotes_runtime(0)

// Check if magic_quotes_runtime is active
if(get_magic_quotes_runtime())
{
// Deactive
set_magic_quotes_runtime(false);
}

二、對(duì)于magic_quotes_runtime,我們統(tǒng)一關(guān)閉它,即set_magic_quotes_runtime(0);不讓從數(shù)據(jù)庫(kù)讀取出來(lái)的數(shù)據(jù)的單引號(hào)、雙引號(hào)和反斜杠都自動(dòng)被加上\。這樣,對(duì)數(shù)據(jù)庫(kù)的操作如下:添加數(shù)據(jù)到數(shù)據(jù)庫(kù)之前,我們手動(dòng)對(duì)數(shù)據(jù)進(jìn)行addslashes(),而從數(shù)據(jù)庫(kù)取出數(shù)據(jù)時(shí),則作相反操作,即stripslashes()。

三、對(duì)于要序列化的內(nèi)容,要保持裸數(shù)據(jù),即要去掉轉(zhuǎn)義,stripslashes(),然后在把序列化過(guò)的內(nèi)容保存到數(shù)據(jù)庫(kù)當(dāng)中(注意,序列化過(guò)的內(nèi)容是不帶單引號(hào)(')、雙引號(hào)(")、反斜線(xiàn)(\)的),示例如下:

$feedarr['body_data'] = serialize(stripslashes($body_data));

標(biāo)簽:,
comments Comments (345)    -
2011/08/07 at 01:42

Apache 配置虛擬服務(wù)器

1,修改本機(jī)的hosts文件,如下:  
示例:
127.0.0.1 localhost
127.0.0.1 www.test.com
127.0.0.1 test.com

2,打開(kāi)Apache的安裝目錄,找到httpd.conf文件,分別去掉下面兩行文字前面的#號(hào)。  
#LoadModule vhost_alias_module modules/mod_vhost_alias.so   
去掉#意思是啟用apache的虛擬主機(jī)功能。  
#Include conf/extra/httpd-vhosts.conf  
去掉這一行的#意思是從conf/extra/httpd-vhosts.conf這個(gè)文件導(dǎo)入虛擬主機(jī)配置。

3,打開(kāi)extra目錄內(nèi)的httpd-vhosts.conf文件,把默認(rèn)的配置


ServerAdmin webmaster@dummy-host.localhost
DocumentRoot "/www/docs/dummy-host.localhost"
ServerName dummy-host.localhost
ServerAlias www.dummy-host.localhost
ErrorLog "logs/dummy-host.localhost-error_log"
CustomLog "logs/dummy-host.localhost-access_log common"


ServerAdmin webmaster@dummy-host2.localhost
DocumentRoot "/www/docs/dummy-host2.localhost"
ServerName dummy-host2.localhost
ErrorLog "logs/dummy-host2.localhost-error_log"
CustomLog "logs/dummy-host2.localhost-access_log common"

改成自己想要的目錄和域名


ServerAdmin webmaster@dummy-host.localhost
DocumentRoot "D:/wamp/www/"
ServerName localhost
ServerAlias localhost
ErrorLog "logs/localhost-error_log"


ServerAdmin webmaster@dummy-host.localhost
DocumentRoot "D:/wamp/www/web/"
ServerName test.com (填主域名)
ServerAlias *.test.com (這里的服務(wù)器別名可以支持泛解析)
ErrorLog "logs/localhost-error_log"

如果 弄完之后 出現(xiàn)403錯(cuò)誤 那 在httpd.conf里找到:

Options FollowSymLinks ExecCGI Indexes
AllowOverride None
Order deny,allow
Deny from all
Satisfy all

更改為

Options FollowSymLinks ExecCGI Indexes
AllowOverride None
# Order deny,allow
# Deny from all
# Satisfy all

標(biāo)簽:,
comments Comments (20)    -
2011/08/06 at 12:04

使用wordpress文章快速發(fā)布功能

wordpress后臺(tái)自帶文章快速發(fā)布功能這一功能,點(diǎn)控制板-工具-快速發(fā)布,將快速發(fā)布加入瀏覽器書(shū)簽或是收藏夾即可。

如果使用的是Firefox,直接加入了書(shū)簽即可,IE瀏覽器用戶(hù)需要注意的是,加入收藏以后,點(diǎn)擊會(huì)被攔截,需設(shè)置兩個(gè)地方:

打開(kāi)internet選項(xiàng)-》隱私

1設(shè)置允許彈出窗口

2將你的網(wǎng)站加入信任列表或者將安全級(jí)別調(diào)到最低(很容易中毒哦)

如果安裝google工具條或是百度工具條的話(huà)也需要設(shè)置一下,允許你網(wǎng)站的彈出窗口。

這樣設(shè)置好以后,在其他網(wǎng)頁(yè)看到有用的信息,只有復(fù)制,然后點(diǎn)擊收藏夾快速發(fā)布的鏈接,輸入用戶(hù)名密碼,所復(fù)制的內(nèi)容就已經(jīng)在編輯器里面了,直接點(diǎn)擊發(fā)布即可。

標(biāo)簽:,
comments Comments (491)    -
久久er精品视频_先锋影院在线亚洲_影音先锋一区_性色av香蕉一区二区
美日韩精品视频免费看| 99人久久精品视频最新地址| 亚洲日本免费| 狠狠色综合色区| 中文无字幕一区二区三区| 亚洲高清二区| 久久精品亚洲热| 久久久www成人免费毛片麻豆 | 日韩视频在线免费| 在线看日韩av| 久久精品电影| 久久女同精品一区二区| 国产精品综合久久久| 制服丝袜激情欧洲亚洲| av成人免费在线| 免费亚洲电影| 另类专区欧美制服同性| 国内精品久久久久影院色| 亚洲女性裸体视频| 亚洲女人天堂av| 欧美日韩一卡| 一区二区日韩欧美| 亚洲综合精品| 国产精品久久久久av免费| 日韩一区二区福利| 亚洲女爱视频在线| 国产精品久久久久久久久久久久| 日韩一级免费| 午夜欧美精品久久久久久久| 国产精品色婷婷| 午夜久久一区| 久久这里有精品视频| 怡红院精品视频| 免费久久精品视频| 亚洲国产精品电影在线观看| 夜夜嗨av一区二区三区中文字幕| 欧美日韩成人一区| 亚洲午夜三级在线| 欧美中文字幕精品| 激情久久五月天| 免费观看国产成人| 日韩视频精品| 欧美一二三视频| 狠狠久久婷婷| 欧美freesex8一10精品| 亚洲毛片播放| 久久福利毛片| 亚洲国产二区| 欧美三级免费| 久久久久亚洲综合| 亚洲茄子视频| 欧美影院精品一区| 亚洲日本欧美天堂| 国产精品美女| 久久综合国产精品台湾中文娱乐网| 91久久久一线二线三线品牌| 亚洲——在线| ●精品国产综合乱码久久久久| 欧美激情精品久久久久久黑人| 中文网丁香综合网| 久久综合婷婷| 亚洲天堂男人| 亚洲电影激情视频网站| 欧美视频二区36p| 久久久午夜电影| 一区二区三区视频在线| 美女视频网站黄色亚洲| 亚洲资源av| 亚洲日本va午夜在线电影| 国产精品一区免费在线观看| 蜜臀va亚洲va欧美va天堂| 亚洲小说欧美另类社区| 欧美成人激情在线| 欧美在线播放一区二区| 日韩亚洲在线| 136国产福利精品导航网址应用| 欧美日韩中文精品| 欧美mv日韩mv亚洲| 久久久成人网| 亚洲影院一区| 日韩午夜在线视频| 亚洲国产精品激情在线观看| 久久久夜精品| 欧美一区二区视频免费观看| 999亚洲国产精| 亚洲国产日韩欧美在线图片| 国产欧美精品一区| 国产精品国产三级国产普通话蜜臀| 欧美1区2区视频| 久久精品一二三区| 午夜精品www| 亚洲图片欧洲图片日韩av| 亚洲三级电影在线观看| 欧美电影免费观看| 免费高清在线视频一区·| 欧美在线网站| 欧美一区二区三区四区在线观看地址| 在线天堂一区av电影| 日韩天堂在线视频| 亚洲啪啪91| 亚洲国产成人久久| 亚洲国产精品高清久久久| 一区二区视频欧美| 韩国视频理论视频久久| 国产一区二区日韩精品| 国产亚洲在线观看| 狠狠入ady亚洲精品| 国内一区二区三区| 在线不卡中文字幕播放| 在线观看日韩| 亚洲欧洲一级| 99国产精品国产精品毛片| 日韩一级片网址| 一二三四社区欧美黄| 在线视频精品一| 亚洲一区黄色| 久久不射中文字幕| 久久综合激情| 亚洲二区精品| 一区二区黄色| 亚洲欧美综合国产精品一区| 欧美中文字幕视频| 玖玖玖国产精品| 欧美精品电影| 国产精品国产三级国产| 国产亚洲精品bt天堂精选| 激情综合色丁香一区二区| 亚洲精品国产精品久久清纯直播| 99精品欧美一区二区三区综合在线| 亚洲一区二区三区色| 久久精品成人| 亚洲电影av| 亚洲一区二区精品在线| 久久久亚洲影院你懂的| 欧美国产综合| 国产精品视频自拍| 亚洲大胆av| 亚洲一区二区三区激情| 久久全国免费视频| 亚洲日韩第九十九页| 香蕉久久一区二区不卡无毒影院 | 国产一区二区三区久久精品| 在线免费观看视频一区| 亚洲天堂av电影| 久久综合给合久久狠狠色 | 久久爱www| 欧美极品一区| 国产一区二区三区在线观看视频 | 欧美一级一区| 欧美激情综合亚洲一二区| 国产乱人伦精品一区二区| 在线免费一区三区| 亚洲欧美中文日韩在线| 欧美成在线视频| 亚洲尤物影院| 欧美人与禽性xxxxx杂性| 国产一区二区三区的电影| 日韩小视频在线观看专区| 久久久久久自在自线| 99在线精品视频| 久久综合久久综合九色| 国产精品视频第一区| 亚洲剧情一区二区| 久久亚洲视频| 亚洲影音一区| 欧美日韩黄色一区二区| 在线日韩视频| 久久黄色网页| 亚洲一区二区三区四区五区午夜 | 亚洲午夜久久久| 亚洲电影在线看| 久久精品成人一区二区三区| 国产精品久久久久久久久久免费看 | 日韩午夜在线播放| 久热精品视频在线免费观看| 亚洲一级免费视频| 欧美日韩精品在线视频| 亚洲精品中文在线| 欧美大片在线观看| 久久超碰97人人做人人爱| 国产欧美精品一区aⅴ影院| 亚洲五月婷婷| 日韩亚洲欧美一区| 欧美精品久久久久久久免费观看 | 国产有码一区二区| 午夜伦理片一区| 亚洲午夜91| 国产精品久久久久天堂| 亚洲一区影音先锋| 99在线观看免费视频精品观看| 欧美另类videos死尸| 亚洲三级免费| 亚洲人成艺术| 欧美日韩国产一区二区三区地区| 亚洲精品网站在线播放gif| 亚洲第一精品久久忘忧草社区| 老司机免费视频一区二区三区| 亚洲成人直播| 亚洲电影免费观看高清完整版在线| 欧美www视频|