Перейти к содержимому

Endif что это php

  • автор:

Endif что это php

(PHP 4, PHP 5, PHP 7, PHP 8)

Конструкция elseif , как её имя и говорит есть сочетание if и else . Аналогично else , она расширяет оператор if для выполнения различных выражений в случае, когда условие начального оператора if эквивалентно false . Однако, в отличие от else , выполнение альтернативного выражения произойдёт только тогда, когда условие оператора elseif будет являться равным true . К примеру, следующий код может выводить a больше, чем b , a равно b или a меньше, чем b :

if ( $a > $b ) echo «a больше, чем b» ;
> elseif ( $a == $b ) echo «a равен b» ;
> else echo «a меньше, чем b» ;
>
?>

Может быть несколько elseif в одном выражении if . Первое выражение elseif (если оно есть) равное true будет выполнено. В PHP вы также можете написать else if (в два слова), и тогда поведение будет идентичным elseif ‘ (в одно слово). Синтаксически значение немного отличается (то же поведение, что и у C), но в конечном итоге оба выражения приведут к одному и тому же результату.

Выражение elseif выполнится, если предшествующее выражение if и предшествующие выражения elseif эквивалентны false , а текущий elseif равен true .

Замечание: Заметьте, что elseif и else if будут равнозначны только при использовании фигурных скобок, как в примерах выше. Если используются синтаксис с двоеточием для определения условий if / elseif , возникает необходимость использования elseif в одном слове. Если разбить else if на два слова, PHP выдаст ошибку разбора.

/* Некорректный способ: */
if( $a > $b ):
echo $a . » больше, чем » . $b ;
else if( $a == $b ): // Не скомпилируется.
echo «Строка выше вызывает фатальную ошибку.» ;
endif;

/* Корректный способ: */
if( $a > $b ):
echo $a . » больше, чем » . $b ;
elseif( $a == $b ): // Заметьте, тут одно слово.
echo $a . » равно » . $b ;
else:
echo $a . » не больше и не равно » . $b ;
endif;

Endif что это php

(PHP 4, PHP 5, PHP 7, PHP 8)

Конструкция if является одной из наиболее важных во многих языках программирования, в том числе и PHP. Она предоставляет возможность условного выполнения фрагментов кода. Структура if реализована в PHP по аналогии с языком C:

if (выражение) инструкция

Как описано в разделе про выражения, выражение вычисляется в булево значение. Если выражение принимает значение true , PHP выполнит инструкцию , а если оно принимает значение false — проигнорирует. Информацию о том, какие значения считаются равными значению false , можно найти в разделе ‘Преобразование в булев тип’.

Следующий пример выведет a больше b , если значение переменной $a больше, чем $b :

if ( $a > $b )
echo «a больше b» ;
?>

Часто необходимо, чтобы условно выполнялось более одной инструкции. Разумеется, для этого нет необходимости помещать каждую инструкцию в if . Вместо этого можно объединить несколько инструкций в блок. Например, следующий код выведет a больше b , если значение переменной $a больше, чем $b , а затем присвоит значение переменной $a переменной $b :

if ( $a > $b ) echo «a больше b» ;
$b = $a ;
>
?>

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

Endif что это php

(PHP 4, PHP 5, PHP 7, PHP 8)

Часто необходимо выполнить одно выражение, если определённое условие верно, и другое выражение, если условие не верно. Именно для этого else и используется. else расширяет оператор if , чтобы выполнить выражение, в случае, если условие в операторе if равно false . К примеру, следующий код выведет a больше чем b , если $a больше, чем $b , и a НЕ больше, чем b в противном случае:

if ( $a > $b ) echo «a больше, чем b» ;
> else echo «a НЕ больше, чем b» ;
>
?>

Выражение else выполняется только, если выражение if вычисляется как false , и если нет других любых выражений elseif , или если они все равны false также (смотрите elseif).

Замечание: Болтающийся else

В случае вложенных операторов if — else , else всегда ассоциируется с ближайшим if .

$a = false ;
$b = true ;
if ( $a )
if ( $b )
echo «b» ;
else
echo «c» ;
?>

Несмотря на отступ (который не имеет значения в PHP), else связан с if ($b) , поэтому этот пример ничего не выведет. Хотя такое поведение допустимо, рекомендуется его избегать, используя фигурные скобки для устранения потенциальных неоднозначностей.

User Contributed Notes 10 notes

15 years ago

An alternative and very useful syntax is the following one:

statement ? execute if true : execute if false

Ths is very usefull for dynamic outout inside strings, for example:

print(‘$a is ‘ . ($a > $b ? ‘bigger than’ : ($a == $b ? ‘equal to’ : ‘smaler than’ )) . ‘ $b’);

This will print «$a is smaler than $b» is $b is bigger than $a, «$a is bigger than $b» if $a si bigger and «$a is equal to $b» if they are same.

19 years ago

If you’re coming from another language that does not have the «elseif» construct (e.g. C++), it’s important to recognise that «else if» is a nested language construct and «elseif» is a linear language construct; they may be compared in performance to a recursive loop as opposed to an iterative loop.

$limit = 1000 ;
for( $idx = 0 ; $idx < $limit ; $idx ++)
< $list []= "if(false) echo \" $idx ;\n\"; else" ; >
$list []= » echo \» $idx \n\»;» ;
$space = implode ( » » , $list );| // if . else if . else
$nospace = implode ( «» , $list ); // if . elseif . else
$start = array_sum ( explode ( » » , microtime ()));
eval( $space );
$end = array_sum ( explode ( » » , microtime ()));
echo $end — $start . » seconds\n» ;
$start = array_sum ( explode ( » » , microtime ()));
eval( $nospace );
$end = array_sum ( explode ( » » , microtime ()));
echo $end — $start . » seconds\n» ;
?>

This test should show that «elseif» executes in roughly two-thirds the time of «else if». (Increasing $limit will also eventually cause a parser stack overflow error, but the level where this happens is ridiculous in real world terms. Nobody normally nests if() blocks to more than a thousand levels unless they’re trying to break things, which is a whole different problem.)

There is still a need for «else if», as you may have additional code to be executed unconditionally at some rung of the ladder; an «else if» construction allows this unconditional code to be elegantly inserted before or after the entire rest of the process. Consider the following elseif() ladder:

PHP альтернативный синтаксис if else, while, for, foreach

Иногда при версте шаблона есть потребность в использовании сокращенного варианта управляющих структур PHP это более удобно и читабельнее.

Условный оператор if-else

// Пример для шаблона WordPress // Код показывается на главной странице сайта // Код показывается на странице сайта ID которой равен 10 // Код показывается на всех остальных страницах

Цикл while

// Пример для шаблона WordPress // Пример обычного цикла

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *