推奨: "これらの 5 つの悪い PHP コーディング習慣を修正するとよいでしょう。 ビデオ チュートリアル "
多くのコード レビューを行った後、いくつかの重複エラーが頻繁に発生します。これは次のとおりです。それらを修正する方法。
1:
$items = []; // ... if (count($items) > 0) { foreach ($items as $item) { // process on $item ... } }
foreach
と配列関数 (array_*
) をループする前に、配列が空かどうかをテストします。空の配列を処理できます。
$items = []; // ... foreach ($items as $item) { // process on $item ... }
2: コードの内容を if ステートメントの概要にカプセル化します。
function foo(User $user) { if (!$user->isDisabled()) { // ... // long process // ... } }
これは これらの 5 つの悪い PHP コーディング習慣を修正するとよいでしょう。 固有の状況ではありませんが、このような状況によく遭遇します。早めに戻すことでインデントを減らすことができます。
すべての main メソッドは最初のインデント レベルにあります
function foo(User $user) { if ($user->isDisabled()) { return; } // ... // 其他代码 // ... }
3: isset メソッドを複数回呼び出す
次の状況が発生する可能性があります:
$a = null; $b = null; $c = null; // ... if (!isset($a) || !isset($b) || !isset($c)) { throw new Exception("undefined variable"); } // 或者 if (isset($a) && isset($b) && isset($c) { // process with $a, $b et $c } // 或者 $items = []; //... if (isset($items['user']) && isset($items['user']['id']) { // process with $items['user']['id'] }
変数が定義されているかどうかを確認する必要があることがよくあります。これらの 5 つの悪い PHP コーディング習慣を修正するとよいでしょう。 には、変数の検出に使用できる isset 関数が用意されており、この関数は一度に複数のパラメーターを受け入れることができるため、次のコードの方が良いかもしれません:
$a = null; $b = null; $c = null; // ... if (!isset($a, $b, $c)) { throw new Exception("undefined variable"); } // 或者 if (isset($a, $b, $c)) { // process with $a, $b et $c } // 或者 $items = []; //... if (isset($items['user'], $items['user']['id'])) { // process with $items['user']['id'] }
Four: Echo メソッドと sprintf メソッドを併用しています
$name = "John Doe"; echo sprintf('Bonjour %s', $name);
このコードは微笑ましいかもしれませんが、たまたま書いたコードです。そして、私はまだそれをたくさん見ています! echo
と sprintf
を組み合わせる代わりに、単純に printf
メソッドを使用できます。
$name = "John Doe"; printf('Bonjour %s', $name);
5: 2 つのメソッドを組み合わせて配列内にキーが存在するかどうかを確認する
$items = [ 'one_key' => 'John', 'search_key' => 'Jane', ]; if (in_array('search_key', array_keys($items))) { // process }
よく見かける最後の間違いは、in_array
と Joint です。 array_keys
の使用。これらはすべて、array_key_exists
を使用して置き換えることができます。
$items = [ 'one_key' => 'John', 'search_key' => 'Jane', ]; if (array_key_exists('search_key', $items)) { // process }
isset
を使用して、値が null
でないかどうかを確認することもできます。
if (isset($items['search_key'])) { // process }
元のアドレス: https://dev.to/klnjmm/5-bad-characters-to-lose-in-php-2j98
翻訳アドレス: https:/ /learnku.com/php/t/49583
以上がこれらの 5 つの悪い PHP コーディング習慣を修正するとよいでしょう。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。