成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

經驗總結PHP應用技巧

開發 后端
文章這里介紹了PHP應用技巧判斷某個函數是否被支持、在字符串中把網址改成超級鏈接、用PHP處理多個同名復選框等等。

經過長時間的工作積累,總結了一些PHP應用技巧,這里就分享給大家吧。PHP (Hypertext Preprocessor)是一種 HTML 內嵌式的語言,也是目前比較流行的網頁編程語言。它支持的后端數據庫種類凡多,幾乎含蓋了當前的所有數據庫系統。同時它包含了一般語言有的數學運算、時間處理、文件系統、字符串處理、行程處理等功能,再加上它是免費的系統,使得成本與效益比,幾乎等于無限大。

1、PHP應用技巧判斷某個函數是否被支持

由于在PHP中我們可以靈活的使用增加或者減少php支持的模塊,所以有的時候我們在使用PHP之前,總是會首先確定某個模塊是否被加載,比如,看看GD圖形模塊是否被支持,可以用下面的這段代碼:

  1. if(!function_exists('imagecreate')) {  
  2. die('這個主機目前不支持GD圖形模塊');  
  3. }  
  4. ?> 

同樣的道理,我們可以利用類似的代碼,測試 MSSQL,OCI等模塊是否被支持。

2、PHP應用技巧在字符串中把網址改成超級鏈接

在網頁中提交表單時,經常在提交的說明文本中出現一些網址,比如個人主頁等信息,如果在顯示時自動將其轉為超級鏈接,那將是一件很愜意的事,就像用WORD編輯文檔時自動出現超級鏈接一樣。下面這段代碼就很好的實現了其功能。

  1. $string = "連接賽迪網http://www.ccidnet.com 站點";  
  2. //注意:連接后需要有個空格或回車。  
  3. $string = eregi_replace("http://([^ ,\r\n]*)","<a href=\\0 tarrget=_blank>\\0</a>",$string);  
  4. $string = eregi_replace("ftp://([^ ,\r\n]*)","<a href=\\0 target=_blank>\\0</a>",$string);  
  5. print $string;  
  6. ?> 

3、PHP應用技巧用PHP處理多個同名復選框

如果一個表單中有多個同名復選框,在提交到php時卻只有一個值,而并不像asp那樣是一串用逗號分割的值。解決的方法是利用數組。將復選框的name后面加上[],例如: 改為:。這樣php將得到一個叫pp的陣列。在提交的表單中先用Count(pp)來判斷數組的個數即選中的個數,然后對數組進行分別處理就行了。同樣的道理也適應于處理下拉框的多選問題。

4、PHP應用技巧利用static實現表格的顏色隔行顯示

我們用PHP從數據庫查詢數據,并將結果輸出到瀏覽器上,如果結果有很多行,表格的bgcolor(背景色)如果全是單色的,瀏覽者會感覺不太舒服。那么怎樣做使表格各行的顏色不同呢?請看下面代碼:

  1. function getcolor()  
  2. {  
  3. static $colorvalue;//定義一個靜態變量  
  4. if($colorvalue=="#eeeeee")  
  5. $colorvalue="#F5F5F5";  
  6. else $colorvalue="#eeeeee";  
  7. return($colorvalue);  
  8. }  
  9. print("<table border=1>\n");//下面輸出10行  
  10. for($i=0;$i<10;$i++)  
  11. {  
  12. $bcolor=getcolor();//換背景顏色  
  13. print("<tr bgcolor=$bcolor>\n");  
  14. print("<td>$i</td>\n");  
  15. print("</tr>");  
  16. }  
  17. print("</table>\n");  
  18. ?> 

說明:此程序中定義了一個靜態變量static $colorvalue意思是在函數調用結束后,此變量$colorvalue還保留值,沒有消失。當再次調用getcolor()函數時,變量$colorvalue的值是上次函數調用結束時$colorvalue的值。

#T#5、在php中避免重復引用的辦法

大家知道,在C語言中,我們可以用#define來定義一個MACRO名字,通過檢查是否該MACRO名字定義過來決定該頭文件是否被引用。在PHP中也有同樣的問題,比如:A引用B,C, B引用C,如果不采取措施,C將被引用2次。這樣可能會導致一些奇怪的問題。解決辦法:定義一個全局變量,并且通過檢查該變量是否定義過來解決這個問題. 辦法很簡單,類似C。 只是這個全局變量我建議都用['user_packages'] ['headfilename']的命名規則。

  1. if (!empty($GLOBALS['FOODTAILS']['GLOBALDEFINE'])) return;  
  2. $GLOBALS['FOODTAILS']['GLOBALDEFINE'] = true;  
  3. class FOODTAILS {...  
  4. };  
  5. ?> 

另外,在主程序中盡量采用require_once "headfiles.php"; 以避免重復引用。

責任編輯:田樹 來源: 51CTO.com
相關推薦

2009-12-31 10:21:53

Silverlight

2009-10-28 17:04:20

linux快速啟動

2010-01-27 18:12:14

Android dia

2009-12-09 13:11:03

PHP框架常見錯誤

2010-06-17 13:12:38

UML用例建模技巧

2010-05-06 17:30:56

Oracle查詢語句

2009-11-16 10:57:51

PHP上傳文件代碼

2009-10-15 09:27:00

2010-04-21 12:49:57

Oracle性能

2010-01-06 15:52:11

軟交換技術

2010-02-02 15:44:18

C++遍歷集合

2009-10-27 10:46:27

ADSL接入技術

2010-01-25 14:25:33

Android Int

2009-09-16 17:13:54

學習Linq

2009-08-19 09:24:43

AJAX引擎經驗總結

2009-09-29 16:32:11

OJB Hiberna

2017-02-17 11:19:00

Android內存泄露分析總結

2009-10-23 09:43:44

光纖接入網

2010-09-13 10:52:37

CSS定位

2010-04-28 17:14:38

Oracle EXPL
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲乱码一区二区 | 成人伊人网 | 久久精品欧美视频 | 狠狠操操| 美女视频三区 | 天天视频成人 | 成人精品系列 | 九九热在线视频免费观看 | 久久久久久久久久久久久久av | 成人综合一区二区 | 国产精品久久久久久久午夜 | 国产一区二区三区 | 9色网站 | 日韩三级电影在线看 | 在线日韩中文字幕 | 中文字幕一区二区三区四区 | 人碰人操| 国产成人精品免高潮在线观看 | 羞羞的视频免费观看 | 欧美视频中文字幕 | 欧美一级二级视频 | 欧美日韩国产一区二区三区 | 日本一级淫片免费啪啪3 | 日本一区二区三区视频在线 | 亚洲一区二区三区在线观看免费 | 久久网站免费视频 | 久久久精品一区 | 91精品国产91久久久久游泳池 | 亚洲精品电影网在线观看 | 在线中文字幕亚洲 | 亚洲日本欧美日韩高观看 | 日韩精品免费在线观看 | 国产情侣久久 | 日韩一二区 | 成年女人免费v片 | 亚洲综合精品 | 日韩免费高清视频 | 天天插天天射天天干 | 日韩高清一区 | 视频一区 亚洲 | 欧美日韩黄色一级片 |