0

私はよく次のようなことをしていることに気づきます。

    $add_class = '';
    if($class){
      $add_class = " abc ";
    } 

このように書く方が良いですか:

    if($class){
      $add_class = " abc ";
    } else {
      $add_class = '';
    }
4

3 に答える 3

2

を定義しないと PHP がエラーをスローすることを考えるとadd_class、おそらく前者を使用する必要があります。

パフォーマンスに関しては(プロセッサでさえ気にしません):

//.000010013580322266 ms
$class = 1;
$add_class = '';
if($class){
  $add_class = " abc ";
}

//.000010013580322266 ms
$class = 1;
if($class){
  $add_class = " abc ";
} else {
  $add_class = '';
}

三項演算子を使用する 3 番目のオプションもあります (少しコストがかかります)。

//.000010967254638672 ms
$class = 1;
$add_class = $class ? 'abc' : '';
于 2013-03-08T03:22:23.690 に答える
0

いいえ、良くありません。

以前のアプローチは、将来のミスを防ぐためにさらにクリーンで安全です。

例:elseのみを使用するのを忘れ、どこかでelseのみを使用することにした場合、変数が必要になったときにコードがクラッシュします。

于 2013-03-08T03:14:33.267 に答える
0

この 2 つの違いは明らかですが、実質的ではありません... この場合、最初に変数を割り当てると、$class 変数が true である可能性が高い場合にのみ、効率が低下します。

于 2013-03-08T03:27:23.347 に答える