php中autoload的用法總結(jié)
PHP中提供了Autoload來幫助我們方便的進(jìn)行文件的包含,但是autoload并非想象的那樣能夠處理所有的情況,今天就來記錄一下前幾天遇到的autoload存在的一些問題。為什么要使用 Autoload在PHP中使用類時(shí),我們必須在使用前加...
|
PHP中提供了Autoload來幫助我們方便的進(jìn)行文件的包含,但是autoload并非想象的那樣能夠處理所有的情況,今天就來記錄一下前幾天遇到的autoload存在的一些問題。為什么要使用 Autoload在PHP中使用類時(shí),我們必須在使用前加...
復(fù)制代碼 代碼如下:<?php// PHP根據(jù)身份證號(hào),自動(dòng)獲取對(duì)應(yīng)的星座函數(shù)function get_xingzuo($cid) { // 根據(jù)身份證號(hào),自動(dòng)返回對(duì)應(yīng)的星座 if (!isIdCard($cid)) return ''; $bir = substr($cid,10,4); $month = (int)su...
PHP各種過濾字符函數(shù)復(fù)制代碼 代碼如下: <?php /** * 安全過濾函數(shù) * * @param $string * @return string */ function safe_replace($string) { $string = str_replace('%20','',$string)...
mcrypt簡(jiǎn)單介紹PHP程序員們?cè)诰帉懘a程序時(shí),除了要保證代碼的高性能之外,還有一點(diǎn)是非常重要的,那就是程序的安全性保障。PHP除了自帶的幾種加密函數(shù)外,還有功能更全面的PHP加密擴(kuò)展庫(kù)Mcrypt和Mhash。其中,Mcrypt擴(kuò)展庫(kù)可...
用PHP的ob_start();控制您的瀏覽器cacheOutput Control 函數(shù)可以讓你自由控制腳本中數(shù)據(jù)的輸出。它非常地有用,特別是對(duì)于:當(dāng)你想在數(shù)據(jù)已經(jīng)輸出后,再輸出文件頭的情況。輸出控制函數(shù)不對(duì)使用 header() 或 setcookie(),...
從學(xué)習(xí)PHP基礎(chǔ)知識(shí)到使用ZendSudio工具開發(fā)有半年多了,這過程中,學(xué)習(xí)斷斷續(xù)續(xù),遇到的問題也是N多,學(xué)習(xí)PHP還真是不讓人省心。最不省心的還是算調(diào)試過程。學(xué)習(xí)編程,一定要懂得調(diào)試,否則就如同盲人摸象,理不清這里面的運(yùn)行機(jī)制...
有25幅作品拿去投票,一次投票需要選16幅,單個(gè)作品一次投票只能選擇一次。前面有個(gè)程序員捅了漏子,忘了把投票入庫(kù),有200個(gè)用戶產(chǎn)生的投票序列為空。那么你會(huì)如何填補(bǔ)這個(gè)漏子?當(dāng)然向上級(jí)反映情況。但是我們這里討論的是技...
一種是利用php的pdo,一種是odbc,com接口來與access數(shù)據(jù)庫(kù)連接。 利用pdo與access數(shù)據(jù)庫(kù)連接 復(fù)制代碼 代碼如下:$path ="f:fontwww.jb51.netspiderresult.mdb"; $conn = new pdo("sqlite:$path"); if( $conn ) { ech...
下面的函數(shù)可以用來過濾用戶的輸入,保證輸入是XSS安全的。具體如何過濾,可以參看函數(shù)內(nèi)部,也有注釋。復(fù)制代碼 代碼如下:<?phpfunction RemoveXSS($val) { // remove all non-printable characters. CR(0a) and LF(0...
<?phpfunction getWeiboData(){ $count = 15; // 參數(shù)source后面輸入你的授權(quán)號(hào) $url = "https://api.weibo.com/2/statuses/home_timeline.json?source=123456789&count=".$count."&page=1"; echo $url.'<br />';
...
這個(gè)與一般的PHP POST或GET傳值再查庫(kù)拿數(shù)據(jù)的思路有點(diǎn)不一樣,需要用到SOAP模塊,處理方法也很簡(jiǎn)單,就是有一些需要注意的事情。首先確認(rèn)你的PHP.ini開啟了.SOAP,就是 extension=php_soap.dll 這前面的分號(hào)去咯。代碼很簡(jiǎn)...
直接看代碼吧,很好明白的復(fù)制代碼 代碼如下://用法 echo remote_filesize($url,$user='',$pw='');$url = "http://www.aa.com/librarys/images/random/rand_11.jpg";//這里要換成你的圖片地址echo remote_filesize($ur...
復(fù)制代碼 代碼如下:class Fibonacci implements Iterator { private $previous = 1; private $current = 0; private $key = 0;
public function current() { return $this->current;...
SPL,PHP 標(biāo)準(zhǔn)庫(kù)(Standard PHP Library) ,此從 PHP 5.0 起內(nèi)置的組件和接口,并且從 PHP5.3 已逐漸的成熟。SPL 其實(shí)在所有的 PHP5 開發(fā)環(huán)境中被內(nèi)置,同時(shí)無需任何設(shè)置。似乎眾多的 PHP 開發(fā)人員基本沒有使用它,甚至聞所未聞。...
最近需要用到發(fā)送郵件的功能,原本是用PHP自帶的mail()函數(shù)發(fā)送的。php mail()這個(gè)方法非常簡(jiǎn)單、方便、易用,但是除了網(wǎng)易郵箱、QQ郵箱、GMAIL郵箱等常用的郵箱可以收到之外,經(jīng)測(cè)試HOTMAIL、TOM、LIVE等郵箱是收不到此類...
復(fù)制代碼 代碼如下:class myIterator implements Iterator { private $position = 0; private $array = array( "first_element", "second_element", "last_element", ); public...
PHP有一個(gè)配置選項(xiàng)叫allow_url_fopen,該選項(xiàng)默認(rèn)是有效的。它允許你指向許多類型的資源,并像本地文件一樣處理。例如,通過讀取URL你可以取得某一個(gè)頁面的內(nèi)容(HTML),看下面的代碼復(fù)制代碼 代碼如下:<?php$contents = file_...
使用系統(tǒng)命令是一項(xiàng)危險(xiǎn)的操作,尤其在你試圖使用遠(yuǎn)程數(shù)據(jù)來構(gòu)造要執(zhí)行的命令時(shí)更是如此。如果使用了被污染數(shù)據(jù),命令注入漏洞就產(chǎn)生了。exec()是用于執(zhí)行shell命令的函數(shù)。它返回執(zhí)行并返回命令輸出的最后一行,但你可以...
session 數(shù)據(jù)暴露會(huì)話數(shù)據(jù)常會(huì)包含一些個(gè)人信息和其它敏感數(shù)據(jù)。基于這個(gè)原因,會(huì)話數(shù)據(jù)的暴露是被普遍關(guān)心的問題。一般來說,暴露的范圍不會(huì)很大,因?yàn)闀?huì)話數(shù)據(jù)是保存在服務(wù)器環(huán)境中的,而不是在數(shù)據(jù)庫(kù)或文件系統(tǒng)中。因此,會(huì)...
例如,下面WEB應(yīng)用可能向登入用戶顯示敏感信息:復(fù)制代碼 代碼如下:<?php$authenticated = FALSE;$authenticated = check_auth();if ($authenticated){ include './sensitive.php';}?>由于sensitive.php位于網(wǎng)站主目...
數(shù)據(jù)庫(kù)使用中需要關(guān)注的主要問題之一是訪問權(quán)限即用戶名及密碼的暴露。在編程中為了方便,一般都會(huì)用一個(gè)db.inc文件保存,如:復(fù)制代碼 代碼如下:<?php $db_user = 'myuser';$db_pass = 'mypass';$db_host = '127.0.0.1';...
一個(gè)是沒有對(duì)輸入的數(shù)據(jù)進(jìn)行過濾(過濾輸入),還有一個(gè)是沒有對(duì)發(fā)送到數(shù)據(jù)庫(kù)的數(shù)據(jù)進(jìn)行轉(zhuǎn)義(轉(zhuǎn)義輸出)。這兩個(gè)重要的步驟缺一不可,需要同時(shí)加以特別關(guān)注以減少程序錯(cuò)誤。對(duì)于攻擊者來說,進(jìn)行SQL注入攻擊需要思考和試驗(yàn),對(duì)數(shù)據(jù)...
當(dāng)然要寫先安裝php的擴(kuò)展,可參考這篇文章:Redis及PHP擴(kuò)展安裝修改php.ini的設(shè)置復(fù)制代碼 代碼如下:session.save_handler = redissession.save_path = “tcp://127.0.0.1:6379″修改后重啟php-fpm或nginx,phpinfo()sessi...
在Mac OS上安裝redis首先是安裝,它會(huì)默認(rèn)安裝到/usr/local/bin下復(fù)制代碼 代碼如下:cd /tmpwget http://redis.googlecode.com/files/redis-2.6.9.tar.gztar -zxf redis-2.6.9.tar.gzcd redis-2.6.9makesudo make inst...
使用說明:1. 將PHP.INI文件里面的"extension=php_gd2.dll"一行前面的;號(hào)去掉,因?yàn)槲覀円玫紾D庫(kù);2. 將extension_dir =改為你的php_gd2.dll所在目錄;復(fù)制代碼 代碼如下:<meta http-equiv="Content-Type" content="te...