0

ワードプレスでphpの使用法を見ているときによく見かける代替構文の使用法を誰かに説明してもらえますか。条件を例に取ります。

私は見ることを期待しています:

if(10==10)
echo 'this is true and will be shown';

代わりに、次のように表示されます。

if(10==10):
echo 'this is true and will be shown;
end if;

そして別の例:

! empty ( $classes_names ) 
and  $class_names = ' class="'. esc_attr( $class_names ) . '"';

「:」は「end if;」とは何ですか? 最後の例の構文は、そのようにまとめたものではありません。

4

1 に答える 1

6

これは、PHP の代替論理構文です。ここですべてを読むことができます。http://php.net/manual/en/control-structures.alternative-syntax.php

HTML やその他のコードに条件文を含めると、見栄えがよくなります。

例えば:

<body>
<? if($_GET['name']=='Dave') {?>
<h3>Hello Dave!</h3>
<? } else { ?>
<h3>Hello Stranger!</h3>
<? }?>
</body>

次のように、IMO の方がはるかに見栄えがします。

<body>
<? if($_GET['name']=='Dave'):?>
<h3>Hello Dave!</h3>
<? else:?>
<h3>Hello Stranger!</h3>
<? endif;?>
</body>

最後のコード例については、これは if ステートメントを記述する別の方法です。つまり、次のようになります。

<? !empty ( $classes_names ) and  $class_names = ' class="'. esc_attr( $class_names ) . '"';?>

以下と同じです:

<? 
if (!empty($classes_names)){
$class_names = ' class="'. esc_attr( $class_names ) . '"';
}
?>

それは確かに紛らわしいです!

于 2012-08-22T09:47:33.970 に答える