天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

11個(gè)PHPer必須要了解的編程規(guī)范

本文將討論常用的良好的代碼習(xí)慣,或者稱(chēng)為代碼規(guī)范,在php領(lǐng)域。

1,錯(cuò)誤報(bào)告開(kāi)啟

錯(cuò)誤報(bào)告是在php中一個(gè)非常有用的功能,應(yīng)同時(shí)在開(kāi)發(fā)階段啟用。 這可以幫助我們確定我們的代碼中的問(wèn)題。 最常用的功能是“E_ALL”,這有助于我們發(fā)現(xiàn)所有的警告和嚴(yán)重錯(cuò)誤。 必須指出的是,我們把我們的代碼投入上線前,我們應(yīng)該關(guān)閉這個(gè)功能提示,否則會(huì)在瀏覽器上的暴漏所有潛在錯(cuò)誤及警告。

2,使用DRY原則

‘Do not Repeat Yourself',DRY原則指的是不要重復(fù)你的代碼.。 這個(gè)概念是一個(gè)非常有用的編程概念,可硬應(yīng)用在任何編程語(yǔ)言,如Java,C#或php均可以。 使用DRY原則,確保我們?cè)诔绦蛑袥](méi)有冗余的代碼。
違反 DRY 原則的解決方案通常被稱(chēng)為 WET,指代“write everything twice”,我們寫(xiě)的相同功能的代碼會(huì)出現(xiàn)多次以上,別大家戲稱(chēng)是喜歡打字。

讓我們看看到下面的代碼:
Listing1:
WET代碼方式:

$mysql = mysql_connect ( 'localhost', 'mysqladmin_uid', 'mysqladmin_pwd' );mysql_select_db( 'DB_NAME' ) or die( "Sorry !! No database selected!");

下面使用DRY 原則優(yōu)化代碼:

$db_host = ' localhost ';$db_user = ' mysqladmin_uid ';$db_password = ' mysqladmin_pwd ';$db_database = ' DB_NAME ';$mysql = mysql_connect($db_host, $db_user, $db_password);mysql_select_db($db_database);

3,適當(dāng)?shù)氖褂每s進(jìn)及空格

在使用任何一種編程語(yǔ)言編寫(xiě)代碼時(shí),必須確保代碼在需要的地方提供在必要適當(dāng)?shù)目s進(jìn)和足夠的空格。 以增加了代碼的可讀性,用更有效的方式管理代碼。

4,使用有意義和一致的命名標(biāo)準(zhǔn)

正如任何編程語(yǔ)言,php的老兵還建議我們遵循有意義的命名標(biāo)準(zhǔn)。 我們有兩個(gè)主要方式在實(shí)現(xiàn)這個(gè)要求:
A.駝峰式
在這種方法中,第一個(gè)字母是小寫(xiě),每一個(gè)單詞的第一個(gè)字母其后以大寫(xiě)。

Listing2:

public class MyClass {public void methodName(String argName) {}}

B.下劃線式
在這種方法中,我們把每?jī)蓚€(gè)詞之間的下劃線(“_”)。 使用這種方法時(shí),代碼可以被修改如下:
Listing3:使用下劃線代碼片段

public class MyClass {public void method_name(String arg_name) {}}

5,避免深層嵌套

使用任何開(kāi)發(fā)語(yǔ)言,多級(jí)嵌套降低了代碼的可讀性。 任何開(kāi)發(fā)者都應(yīng)應(yīng)避免使用深層嵌套。

Listing4:代碼片段具有多級(jí)嵌套

<?phpclass MyClass {public function method_name($arg_name) {if (is_writable ( $folder )) {if ($fp = fopen ( $file_location_path, 'w' )) {if ($stuff = extractSomeConditionalStuff ()) {if (fwrite ( $fp, $stuff )) {// ...} else {return false;}} else {return false;}} else {return false;}} else {return false;}}}?>

上面的代碼是一個(gè)簡(jiǎn)單的嵌套代碼。 我們可以看到它是非常困難的,如果塊結(jié)束哪里的身影。 為了更好的可讀性,讓我們修改的代碼:
Listing5:代碼片段,避免多級(jí)嵌套

function method_name (String arg_name) {// ...if (! is_writable ( $folder )) {return false;}if (! $fp = fopen ( $file_location_path, 'w' )) {return false;}if (! $stuff = extractSomeConditionalStuff ()) {return false;}if (fwrite ( $fp, $stuff )) {// ...} else {return false;}}

6,添加應(yīng)有的注釋

開(kāi)發(fā)中,請(qǐng)確保你的源代碼中有足夠的行內(nèi)注釋。 這是一個(gè)應(yīng)該遵守的標(biāo)準(zhǔn)做法。 這有助于深入分析代碼,因?yàn)橥ǔG闆r下,負(fù)責(zé)編碼的人不會(huì)一直保持不變。 即使同一個(gè)人被要求在代碼中進(jìn)行一些簡(jiǎn)單的修改,行內(nèi)的注釋總是會(huì)有助于理解當(dāng)時(shí)編寫(xiě)代碼是用來(lái)做什么的。 為了在php中使用較好的注釋標(biāo)準(zhǔn),建議大家去查看一些標(biāo)準(zhǔn)的php文檔包,例如phpDocumentor。

7,不要把phpINFO()函數(shù)在網(wǎng)站根目錄

phpinfo()函數(shù)是一個(gè)非常重要的功能,應(yīng)小心使用。 使用此功能,任何人都可以看到服務(wù)器環(huán)境的詳細(xì)信息。它最好始終放在
一個(gè)安全位置的文件中使用,一旦開(kāi)發(fā)完成上線后,應(yīng)該刪除這段代碼使用。

8,永遠(yuǎn)不要相信用戶

如果您的應(yīng)用程序涉及任何用戶輸入,務(wù)必要編寫(xiě)安全的代碼以處理這種方式,因?yàn)樗鞣N可能的輸入。 想要避免程序被攻擊注入或者破壞數(shù)據(jù)完整性,一定要驗(yàn)證過(guò)濾數(shù)據(jù)的格式。大家可以看下這篇文章《可怕的代碼注入方式》

9,合理使用緩存機(jī)制

良好的編程方法總是建議使用緩存機(jī)制緩存幫助我們獲得更好的性能。

php的世界,緩存使用來(lái)實(shí)現(xiàn):
Memcached的 ―― 一個(gè)在使用小數(shù)據(jù)塊存儲(chǔ)鍵值對(duì)存 儲(chǔ)。
APC ―― 可選php緩存為開(kāi)放的php操作碼緩存
XCache ―― 一種快速可靠的php操作碼緩存
Zend Cache

主站蜘蛛池模板: 国产午夜精品久久久久婷婷 | 成年人深夜福利 | 亚洲国产三级在线观看 | 手机看片一区二区 | 百度影音第四色 | 免费99精品国产自在现线 | 午夜办公室在线观看高清电影 | asmr淫语 | 人妖欧美一区二区三区四区 | 日日色在线影院 | 精品国产成人系列 | 久久久久亚洲精品影视 | 亚洲国产成人爱AV在线播放丿 | 天美传媒 免费观看 | 一攻多受h嗯啊巨肉bl巨污 | 亚洲中文字幕乱倫在线 | 无码爽死成人777在线观看网站 | 被黑人掹躁10次高潮 | 久草草在线视视频 | 久久性综合亚洲精品电影网 | 欧美狂野乱码一二三四区 | 亚洲一区二区免费看 | 女人被躁到高潮嗷嗷叫免费 | 大胆国模一区二区三区伊人 | 国产精品97久久AV色婷婷综合 | 国产成人综合高清在线观看 | 欧美16一17sex性hd| 無码一区中文字幕少妇熟女H | 国产成人AV永久免费观看 | 美女扣逼软件 | 色偷偷av男人的天堂 | 两个奶被男人揉了一个晚上 | 成人在线观看播放 | 啦啦啦 中文 日本 韩国 免费 | 狠狠躁天天躁小说 | 黑人寄宿羽月希产后奶水 | 暖暖 免费 高清 日本视频5 | 色青青草原桃花久久综合 | 果冻传媒AV精品一区 | 男女啪啪久久精品亚洲A | a级老头和老太xxxx |