久艹网,亚洲一日韩欧美中文字幕2019,国产欧美日韩精品专区黑人,一区二区三区久久99

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

最優(yōu)良人

Category Page for: 后端程序

二級目錄下,htaccess做301重定向,把ip地址轉(zhuǎn)向域名

2011/08/26 at 15:14 » Comments (221)

因為網(wǎng)站是放在獨立IP的主機上,百度和谷歌直接通過ip地址收錄了網(wǎng)站許多頁面,包括二級目錄下的頁面,因為子目錄下也存在htaccess文件,有自己的規(guī)則,所以根目錄的301跳轉(zhuǎn)規(guī)則對子目錄無效,需要在子目錄下再做301重定向。 發(fā)現(xiàn)子目錄與根目錄不同的地方是訪問地址后面有沒有加斜杠所請求的地址有一點點不同,下面是規(guī)則: RewriteBase /news RewriteCond %{HTTP_HOST} ^zui88.com [NC] RewriteRule com(.*)$ http://www.dgkai.cn$1 [L,R=301] #不加斜杠請求的地址是/wwwroot/zui88.com/news/ RewriteCond %{HTTP_HOST} ^zui88.com [NC] RewriteRule (.*)$ http://www.dgkai.cn/news/$1 [L,R=301] RewriteCond %{HTTP_HOST} ^124.173.133.154 [NC] RewriteRule com(.*)$ http://www.dgkai.cn$1 [L,R=301] RewriteCond %{HTTP_HOST} ^124.173.133.154 [NC] RewriteRule (.*)$ http://www.dgkai.cn/news/$1 [L,R=301] more »

什么是php反射機制以及利用php反射機制實現(xiàn)可插拔可擴展的插件架構(gòu)

2011/08/26 at 00:06 » Comments (406)

反射是什么? 它是指在PHP運行狀態(tài)中,擴展分析PHP程序,導(dǎo)出或提取出關(guān)于類、方法、屬性、參數(shù)等的詳細信息,包括注釋。這種動態(tài)獲取的信息以及動態(tài)調(diào)用對象的方法的功能稱為反射API。 反射是操縱面向?qū)ο蠓缎椭性P偷腁PI,其功能十分強大,可幫助我們構(gòu)建復(fù)雜,可擴展的應(yīng)用。其用途如:自動加載插件,自動生成文檔,甚至可用來擴充PHP語言。php反射api由若干類組成,可幫助我們用來訪問程序的元數(shù)據(jù)或者同相關(guān)的注釋交互。借助反射我們可以獲取諸如類實現(xiàn)了那些方法,創(chuàng)建一個類的實例(不同于用new創(chuàng)建),調(diào)用一個方法(也不同于常規(guī)調(diào)用),傳遞參數(shù),動態(tài)調(diào)用類的靜態(tài)方法。 * ** 反射api是php內(nèi)建的oop技術(shù)擴展,包括一些類,異常和接口,綜合使用他們可用來幫助我們分析其它類,接口,方法,屬性,方法和擴展。這些oop擴展被稱為反射,位于php源碼/ext/reflection目錄下。 可以使用反射api自省反射api本身(這可能就是反射最初的意思,自己"看"自己): <?php Reflection::export(new ReflectionExtension('reflection')); ?> 幾乎所有的反射api都實現(xiàn)了reflector接口,所有實現(xiàn)該接口的類都有一個export方法,該方法打印出參數(shù)對象的相關(guān)信息。 使用get_declared_classes()獲取所有php內(nèi)置類,get_declared_interfaces(); get_defined_functions(); get_defined_vars(); get_defined_constants();可獲取php接口,方法,變量,常量信息。 ** *** 反射初探: <?php //定義一個自定義類 class MyTestClass{ public function testFunc($para0='defaultValue0'){ } } //接下來反射它 foreach(get_declared_classes() as $class){ //實例化一個反射類 ...more »

php強制下載文件,避免文件或者圖片直接在瀏覽器打開

2011/08/25 at 15:08 » Comments (10)

以下代碼是FLEAPHP框架自帶的文件下載助手類 /** * FLEA_Helper_SendFile 類用于向瀏覽器發(fā)送文件 * * 利用 FLEA_Helper_SendFile,應(yīng)用程序可以將重要的文件保存在 * 瀏覽器無法訪問的位置。然后通過程序?qū)⑽募?nèi)容發(fā)送給瀏覽器。 * * @package Core * @author 起源科技 (www.qeeyuan.com) * @version 1.0 */ class FLEA_Helper_SendFile { /** ...more »

php逐條輸出結(jié)果到瀏覽器,實現(xiàn)實時提醒和無刷新提示

2011/08/25 at 14:50 » Comments (280)

php實現(xiàn)字符串逐條輸出的原理是利用flush();ob_flush();函數(shù)刷新輸出緩沖 ob_end_clean(); //清除輸出緩存并且關(guān)閉緩存 echo str_pad(' ',256);//輸出256字節(jié)空格(在ie瀏覽器下要接受大于256個字節(jié)才會輸出顯示 ) for($i=0;$i<5;$i++){ echo '<br/>abc___'.$i; flush(); ob_flush(); sleep(1); } 該方法在opera下不可用,因為opera瀏覽器在不遇到一個html標簽之前是不輸出內(nèi)容的 more »

.htaccess排除真實目錄和文件規(guī)則

2011/08/25 at 12:21 » Comments (24)

.htaccess排除真實目錄和文件規(guī)則 RewriteEngine on RewriteBase /html RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L] #RewriteRule ^.*/(sysadm/.+)$ $1/index.php [L] more »

php在windows主機或虛擬空間利用socket在線發(fā)送郵件

2011/08/24 at 23:53 » Comments (2,688)

在linux虛擬主機下一般可以利用php的mail函數(shù)直接發(fā)郵件 bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] ) 但是在windows虛擬主機下則不能直接使用mail函數(shù),可以通過socket了,采用郵箱的smtp服務(wù)在線發(fā)送郵件(現(xiàn)在的163免費郵箱一注冊就可以免費使用這個服務(wù),并且默認開通的),比較成熟的在線發(fā)送郵件類有php_mailer,功能很強大,不過下面介紹的是一個比較簡單的socket郵件發(fā)送類,應(yīng)付一般的需求足夠了。 使用方法是: require_once (dirname(__FILE__).'/email.class.php');//該類的代碼附在文章后面 //########################################## $smtpserver = "smtp.163.com";//SMTP服務(wù)器 $smtpserverport =25;//SMTP服務(wù)器端口 $smtpusermail = "XXX@163.com";//SMTP服務(wù)器的用戶郵箱 $smtpemailto = "XXXXX@qq.com";//發(fā)送給誰 $smtpuser = ...more »

htaccess在根目錄和子目錄下的執(zhí)行順序

2011/08/23 at 14:13 » Comments (81)

如果在根目錄和子目錄下都存在htaccess文件,默認根目錄下htaccess的規(guī)則是不會被繼承的,如果這些配置需要影響到子目錄,需要手動寫上"RewriteOptions inherit"才能繼承父配置,參考上一篇 htaccess的用法 。 所以如果子目錄也要用到根目錄的配置規(guī)則,最好是重新定義,因為如果單純的繼承的話,根目錄htaccess里面的某些規(guī)則的路徑可能已經(jīng)不適用子目錄。 more »

htaccess,apache下分布式配置文件的配置選項和flag標簽

2011/08/23 at 14:06 » Comments (100)

以下指命令的作用域都是.htaccess RewriteEngine On|Off RewriteEngine 可用On 或者 Off 打開或關(guān)閉rewrite功能。 rewrite configurations 不會繼承,所以你得給每個你想用 rewrite功能的virtual host加上這個指令。 RewriteBase URL-path RewriteBase指令顯式地設(shè)置了目錄級重寫的基準URL。在下文中,你可以看見RewriteRule可以用于目錄級的配置文件中 (.htaccess)并在局部范圍內(nèi)起作用,即規(guī)則實際處理的只是剝離了本地路徑前綴的一部分。處理結(jié)束后,這個路徑會被自動地附著回去。默認值是"RewriteBase physical-directory-path"。 在對一個新的URL進行替換時,此模塊必須把這個URL重新注入到服務(wù)器處理中。為此,它必須知道其對應(yīng)的URL前綴或者說URL基準。通常,此前綴就是對應(yīng)的文件路徑。但是,大多數(shù)網(wǎng)站URL不是直接對應(yīng)于其物理文件路徑的,因而一般不能做這樣的假定! 所以在這種情況下,就必須用RewriteBase指令來指定正確的URL前綴。 如果你的網(wǎng)站服務(wù)器URL不是與物理文件路徑直接對應(yīng)的,而又需要使用RewriteBase指令,則必須在每個對應(yīng)的.htaccess文件中指定RewriteRule 。 RewriteCond TestString CondPattern RewriteCond指令定義了一個規(guī)則的條件,即在一個RewriteRule指令之前有一個或多個RewriteCond指令。條件之后的重寫規(guī)則僅在當前URI與pattern匹配并且符合這些條件的時候才會起作用。 Notice:All of these tests can also be prefixed by an exclamation mark ('!') to ...more »

PHP定界符EOT的用法

2011/08/20 at 14:54 » Comments (120)

定界符: 另一種給字符串定界的方法使用定界符語法("<<<")。應(yīng)該在 <<< 之后提供一個標識符,然后是字符串,然后是同樣的標識符結(jié)束字符串。 結(jié)束標識符必須從行的第一列開始。同樣,標識符也必須遵循 PHP 中其它任何標簽的命名規(guī)則:只能包含字母數(shù)字下劃線,而且必須以下劃線或非數(shù)字字符開始。 php 中(<<<eot)的用法 有時候我們需要在php輸出比較復(fù)雜的html文本,如果使用雙引號的話,文本里面有雙引號的   例: <?php while($rs=$db->fetch_array($news)){ echo <<<EOT <li> <a href="?{$rs[id]}">{$rs[title]}</a><img src="images/new.gif" alt=""><span>[{$rs[date]}]</span></li> EOT; //注意,此處的EOT;必須在當前行的最前,其前面不允許有任何字符 ?> 從上面的例子可以看出<<<eot為開始標識,結(jié)束為eot; 中間引用變量則就為{變量} 這種方法通常用在生成靜態(tài)度頁面時,可以把此代碼寫在靜態(tài)文件中,然后然后用來調(diào)用即可 定界符 給字符串定界的方法使用定界符語法("<<<")。應(yīng)該在 <<< 之后提供一個標識符,然后是字符串,然后是同樣的標識符結(jié)束字符串。 結(jié)束標識符必須從行的第一列開始。同樣,標識符也必須遵循 PHP 中其它任何標簽的命名規(guī)則:只能包含字母數(shù)字下劃線,而且必須以下劃線或非數(shù)字字符開始。 舉個例子: <?php $str = <<<EOD Example of string spanning multiple lines using heredoc syntax. EOD; ?> 但要注意的是: 結(jié)束標識符所在的行不能包含任何其它字符,可能除了一個分號(;)之外。這尤其意味著該標識符不能被縮進,而且在分號之前和之后都不能有任何空格或制表符。同樣重要的是要意識到在結(jié)束標識符之前的第一個字符必須是你的操作系統(tǒng)中定義的換行符。例如在 Macintosh 系統(tǒng)中是 \r。 如果破壞了這條規(guī)則使得結(jié)束標識符不"干凈",則它不會被視為結(jié)束標識符,PHP 將繼續(xù)尋找下去。如果在這種情況下找不到合適的結(jié)束標識符,將會導(dǎo)致一個在腳本最后一行出現(xiàn)的語法錯誤。 如下: print ...more »

smarty使用date函數(shù)

2011/08/19 at 18:04 » Comments (5)

smarty在模板上可以直接使用php自帶的函數(shù),甚至可以使用自定義的函數(shù),使用的方法是: 模板中調(diào)用變量時,當只有一個參數(shù)是,就直接{$str1|函數(shù)名},當有函數(shù)有兩個參數(shù)時,{第一個參數(shù)|函數(shù)名:第二個參數(shù)},當有三個參數(shù)時,{第一個參數(shù)|函數(shù)名:第二個參數(shù):第三個參數(shù)},,當有4,5,,,參數(shù)時,以此類推。 smarty使用date函數(shù)的用法是{{'Y-m-d'|date:$var}} more »