ホームページ >バックエンド開発 >PHPチュートリアル >これらの 5 つの悪い PHP コーディング習慣を修正するとよいでしょう。

これらの 5 つの悪い PHP コーディング習慣を修正するとよいでしょう。

藏色散人
藏色散人転載
2020-09-14 13:34:144456ブラウズ

推奨: "これらの 5 つの悪い PHP コーディング習慣を修正するとよいでしょう。 ビデオ チュートリアル "

これらの 5 つの悪い PHP コーディング習慣を修正するとよいでしょう。

多くのコード レビューを行った後、いくつかの重複エラーが頻繁に発生します。これは次のとおりです。それらを修正する方法。

1:

$items = [];
// ...
if (count($items) > 0) {
    foreach ($items as $item) {
        // process on $item ...
    }
}

foreach と配列関数 (array_*) をループする前に、配列が空かどうかをテストします。空の配列を処理できます。

  • 最初にテストする必要はありません
  • インデントを 1 レベル減らすことができます
$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);

このコードは微笑ましいかもしれませんが、たまたま書いたコードです。そして、私はまだそれをたくさん見ています! echosprintf を組み合わせる代わりに、単純に 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 サイトの他の関連記事を参照してください。

声明:
この記事はlearnku.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。