Какой синтаксис это в PHP? - PullRequest
2 голосов
/ 17 января 2010
if(true):
    echo 'good';
endif;

Сегодня я вижу это только в PHP!

Я всегда использовал:

if(true)
{
   echo 'good';
}

Ответы [ 5 ]

10 голосов
/ 17 января 2010

Это Альтернативный синтаксис для структур управления .


Цитирую эту страницу руководства:

PHP предлагает альтернативный синтаксис для некоторые из его структур управления; а именно if, while, for, foreach и switch. В каждом случае, основная форма альтернативного синтаксиса это изменить открывающую скобку на двоеточие (:) и закрывающая скобка endif;, endwhile;, endfor;, endforeach; или endswitch;, соответственно.


Я не часто вижу его в файлах «чистого PHP», но довольно часто он используется, когда PHP смешивается с HTML в одном и том же файле, т.е. когда используется в качестве языка шаблонов.

1 голос
/ 17 января 2010

Это точно так же. Я часто использую такой синтаксис в шаблонах - он гораздо удобнее для чтения (на мой взгляд). Вот еще: Альтернативный синтаксис для структур управления

1 голос
/ 17 января 2010

Вы можете очень легко чередовать первое с html.

http://php.net/manual/en/control-structures.alternative-syntax.php

0 голосов
/ 03 июня 2010

тот же эффект, без различий и, по моему личному мнению, предложение более удобочитаемого кода и чистого синтаксиса, а также ключевое слово закрытия в виде конца может помочь во вложенных управляющих структурах, чтобы указать, какое из них закрывается, а не угадывать из набора скобок .

0 голосов
/ 17 января 2010

Обозначение PHP:

if(x=1):
  dosomething();
elseif(x=2):
  dosomethingelse();
  andanotherthing();
else:
  doesntmatcheither();
endif;

также связано с

$var=(query?true:false);

или даже более кратко

$var=query?true:false;

Но мне лично не нравится опускать скобки; называй меня параноиком;)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...