php中elseif 和else if的区别

简介: @(黑线)以前貌似看到if这里,就直接跳了,可是今天再读文档,又发现了点东西...@(乖)可能你已经知道了php存在elseif 和else if,保留了c的风格。

@(黑线)以前貌似看到if这里,就直接跳了,可是今天再读文档,又发现了点东西...

@(乖)可能你已经知道了php存在elseif 和else if,保留了c的风格。

if(a==1)ecℎoa;

elseif /else if(...)...

单句可以不用花括号包裹

这是摘录官方文档的话

Note: 必须要注意的是 elseif 与 else if 只有在类似上例中使用花括号的情况下才认为是完全相同。如果用冒号来定义if/elseif 条件,那就不能用两个单词的 else if,否则 PHP 会产生解析错误。
<?php
/* 不正确的使用方法: */
if ($a > $b):
    echo $a." is greater than ".$b;
else if ($a == $b): // 将无法编译
    echo "The above line causes a parse error.";
endif;
/* 正确的使用方法: */
if ($a > $b):
    echo $a." is greater than ".$b;
elseif ($a == $b): // 注意使用了一个单词的 elseif
    echo $a." equals ".$b;
else:
    echo $a." is neither greater than or equal to ".$b;
endif;
?>

说来惭愧,原先是不知道php还有endif这样的写法的,以前是学vb的时候看到这样的风格,以及看typecho文件的时候这样的写法,我还以为是typecho特别处理过的。∠( ᐛ 」∠)_

以前习惯

<?php if ($a == 5){ ?>
A ist gleich 5
<?php }; ?>

如今知道这样也行

<?php if ($a == 5): ?>
A ist gleich 5
<?php endif; ?>

而且你还可以这样的混合写法

<?
if($a):
    echo $a;
else {
    echo $c;
}
?>
<?
if($a) {
    echo $a;
}
else:
    echo $c;
endif;
?>

但是这样的嵌套

<?
if($a):
    echo $a;
    if($b) {
      echo $b;
    }
else:
    echo $c;
endif;
?>

会有意想不到的的bug出现。不支持在同一个控制块内混合使用两种语法。

看到这里,再说下php 流程控制的替代写法

PHP 提供了一些流程控制的替代语法,包括 if,while,for,foreach 和 switch。替代语法的基本形式是把左花括号({)换成冒号(:),把右花括号(})分别换成 endif;,endwhile;,endfor;,endforeach; 以及 endswitch;。

因此有上面的endif

Warning switch 和第一个 case 之间的任何输出(含空格)将导致语法错误。例如,这样是无效的:
<?php switch ($foo): ?>
    <?php case 1: ?>
    ...
<?php endswitch ?>
而这样是有效的,因为 switch 之后的换行符被认为是结束标记 ?> 的一部分,所以在 switch 和 case 之间不能有任何输出:
<?php switch ($foo): ?>
<?php case 1: ?>
    ...
<?php endswitch ?>
目录
相关文章
|
4月前
|
存储 PHP
PHP中如何定义常量以及常量和变量的主要区别
常量和变量在PHP中扮演着不同的角色,各有各的应用场景。常量用于存储不会改变的值,具有全局作用域,定义后在整个脚本中都可以访问。变量则用于存储在程序执行过程中可能改变的值,作用域可以是局部的或全局的。掌握常量和变量的定义和区别,有助于编写出更加清晰、可维护的代码。希望本文能帮助你更好地理解和使用PHP中的常量和变量。
115 20
ly~
|
10月前
|
安全 Java 大数据
php跟java有什么区别
PHP 和 Java 是两种常用编程语言,各有特色。PHP 语法简洁灵活,适用于快速开发中小型网站,尤其在 Web 脚本和数据库交互中表现出色。Java 则语法严谨,强类型特性使其在企业级应用、移动开发及大数据处理中更受欢迎,具备高稳定性和安全性。通过优化,PHP 性能可提升,而 Java 在大规模应用中表现更佳。总体而言,PHP 开发效率高但维护性稍差,Java 则更注重代码质量和安全性。
ly~
321 5
|
10月前
|
SQL 关系型数据库 数据库连接
php连接数据库之PDO,PDO的简单使用和预定义占位符的使用以及PDOStatement对象的使用,占位符的不同形式,bindValue和bindParam绑定预定义占位符参数的区别
本文介绍了PHP中PDO(PHP Data Objects)扩展的基本概念和使用方法。内容包括PDO类和PDOStatement类的介绍,PDO的简单使用,预定义占位符的使用方法,以及PDOStatement对象的使用。文章还讨论了绑定预定义占位符参数的不同形式,即bindValue和bindParam的区别。通过具体示例,展示了如何使用PDO进行数据库连接、数据查询、数据插入等操作。
php连接数据库之PDO,PDO的简单使用和预定义占位符的使用以及PDOStatement对象的使用,占位符的不同形式,bindValue和bindParam绑定预定义占位符参数的区别
|
PHP
PHP public、protected、private、static、abstract、final、interface、implements 区别对比
PHP public、protected、private、static、abstract、final、interface、implements 区别对比
370 0
|
PHP
PHP &&是什么,||是什么,&&和||有什么区别?
PHP &&是什么,||是什么,&&和||有什么区别?
143 1
|
PHP
PHP - Laravel Blade模板注释 {{-- 注释 --}} 与 <!-- 注释 --> 的区别
PHP - Laravel Blade模板注释 {{-- 注释 --}} 与 <!-- 注释 --> 的区别
137 0
|
机器学习/深度学习 安全 Java
PHP, Python和Java的区别
PHP, Python和Java是广泛使用的编程语言。每种编程语言都有其独特的优点和缺点。在本文中,我们将对这些编程语言进行分析,并探讨它们在不同应用场景中的最佳用途。
225 0