激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - PHP教程 - PHP編程一定要改掉的5個不良習(xí)慣

PHP編程一定要改掉的5個不良習(xí)慣

2021-10-27 13:32CRMEB技術(shù)團(tuán)隊(duì) PHP教程

在項(xiàng)目的每一次提交之后,我都會進(jìn)行大量代碼審查,會經(jīng)常看到一些重復(fù)出現(xiàn)的錯誤。以下這五個錯誤應(yīng)該要及時糾正,這是糾正它們的方法。

這5個PHP編程中的不良習(xí)慣,一定要改掉 PHP世界上最好的語言!

測試循環(huán)前數(shù)組是否為空?

?
1
2
3
4
5
$items = [];
// ...
if (count($items) > 0) {
 foreach ($items as $item) {  // process on $item ...
 }}

foreach循環(huán)或數(shù)組函數(shù)(array_*)可以處理空數(shù)組。

  • 不需要先進(jìn)行測試
  • 可以減少一層縮進(jìn)
?
1
2
3
4
$items = [];
// ...
foreach ($items as $item) { // process on $item ...
}

將方法的所有內(nèi)容封裝在if語句中

?
1
2
3
4
5
6
7
8
9
10
11
12
13
function foo(User $user) {
 if (!$user->isDisafunction foo(User $user) {
 if (!$user->isDisabled()) {
  // ...
  // long process
  // ...
 }
}bled()) {
  // ...
  // long process
  // ...
 }
}

這不是特定于PHP的,但我經(jīng)常看到它。你可以通過提前返回,來減少縮進(jìn)級別的極簡代碼! 該函數(shù)的所有“有用”主體現(xiàn)在處于第一個縮進(jìn)級別

?
1
2
3
4
5
6
7
function foo(User $user) {
 if ($user->isDisabled()) {
  return;
 } // ...
 // long process
 // ...
}

多次調(diào)用isset方法

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$a = null;
$b = null;
$c = null;
// ...
 
if (!isset($a) || !isset($b) || !isset($c)) {
 throw new Exception("undefined variable");
}
 
// or
 
if (isset($a) && isset($b) && isset($c) {
 // process with $a, $b et $c
}
 
// or
 
$items = [];
//...
if (isset($items['user']) && isset($items['user']['id']) {
 // process with $items['user']['id']
}

我們經(jīng)常需要檢查是否已定義變量(而不是null)。 在PHP中,我們可以使用isset函數(shù)來做到這一點(diǎn)。而且該函數(shù)一次可以接受多個參數(shù)!

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$a = null;
$b = null;
$c = null;
// ...
 
if (!isset($a, $b, $c)) {
 throw new Exception("undefined variable");
}
 
// or
 
if (isset($a, $b, $c)) {
 // process with $a, $b et $c
}
 
// or
 
$items = [];
//...
if (isset($items['user'], $items['user']['id'])) {
 // process with $items['user']['id']
}

echo方法和sprintf結(jié)合使用

?
1
2
$name = "John Doe";
echo sprintf('Bonjour %s', $name);

這段代碼可能在微笑,但是我碰巧寫了一段時間。而且我仍然看到很多!除了結(jié)合echosprintf,我們可以簡單地使用printf方法。

?
1
2
$name = "John Doe";
printf('Bonjour %s', $name);

通過組合兩種方法檢查數(shù)組中鍵的存在

?
1
2
3
4
5
6
$items = [
 'one_key' => 'John',
 'search_key' => 'Jane',
];if (in_array('search_key', array_keys($items))) {
 // process
}

最后一個錯誤我看到的往往是聯(lián)合使用in_arrayarray_keys。所有這些都可以使用array_key_exists替換。

?
1
2
3
4
5
6
$items = [
 'one_key' => 'John',
 'search_key' => 'Jane',
];if (array_key_exists('search_key', $items)) {
 // process
}

我們還可以使用isset來檢查值是否是null。

?
1
2
3
if (isset($items['search_key'])) {
 // process
}

以上就是PHP編程一定要改掉的5個不良習(xí)慣的詳細(xì)內(nèi)容,更多關(guān)于php 不良習(xí)慣的資料請關(guān)注服務(wù)器之家其它相關(guān)文章!

原文鏈接:https://juejin.im/post/6872242391140155400?utm_source=tuicool&utm_medium=referral

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 久久精品无码一区二区日韩av | 草莓福利视频在线观看 | 国产一区免费 | 亚洲日色 | 男女一边摸一边做羞羞视频免费 | 久久蜜桃香蕉精品一区二区三区 | 在线男人天堂 | 国产精品爱久久久久久久 | 成人免费淫片视频软件 | 国产亚洲精品久久久久5区 男人天堂免费 | 亚洲码无人客一区二区三区 | 青青青在线免费 | 美国av免费看 | 欧美精品免费一区二区三区 | 国产亚洲精品久久久久久久久久 | 99精品视频99 | 日本黄色a视频 | 亚洲无av | 中文字幕在线免费观看电影 | 国产精品成aⅴ人片在线观看 | 免费一级欧美大片视频 | 污黄视频在线播放 | 91亚洲免费视频 | 国产色妞影院wwwxxx | 中文字幕亚洲视频 | 一本视频在线观看 | 91精品久久久久久久久久久 | 色视频91| 斗破苍穹在线免费 | 免费一级欧美在线观看视频 | 法国性xxx精品hd | 狠狠操在线观看 | 中文字幕涩涩久久乱小说 | 国产免费一区二区三区视频 | 中文字幕亚洲视频 | 中文字幕视频在线播放 | 国产亚洲欧美日韩高清 | 亚洲自拍第二页 | 亚洲国产精品高潮呻吟久久 | 国产精品99久久久久久大便 | 午夜视频免费在线观看 |