찾다
php教程php手册PHP 流量控制语句的替代语法

PHP 流量控制语句的替代语法

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

elseif与 else if 只有在类似使用花括号的情况下才认为是完全相同。如果用冒号来定义if/elseif 条件,那就不能用两个单词的 else if,否则 PHP 会产生解析错误。

foreach 语法结构提供了遍历数组的简单方式。foreach 仅能够应用于数组和对象,如果尝试应用于其他数据类型的变量,或者未初始化的变量将发出错误信息。由于 foreach 依赖内部数组指针,在循环中修改其值将可能导致意外的行为。

 

foreach (array_expression as $value)
    statement
foreach (array_expression as $key => $value)
    statement

require 和 include 几乎完全一样,除了处理失败的方式不同之外。require 在出错时产生 E_COMPILE_ERROR 级别的错误。换句话说将导致脚本中止而 include 只产生警告(E_WARNING),脚本会继续运行。 相应的有require_once,include_once。

被包含文件先按参数给出的路径寻找,如果没有给出目录(只有文件名)时则按照 include_path 指定的目录寻找。如果在 include_path 下没找到该文件则 include 最后才在调用脚本文件所在的目录和当前工作目录下寻找。如果最后仍未找到文件则 include 结构会发出一条警告;这一点和 require 不同,后者会发出一个致命错误。
如果定义了路径——不管是绝对路径(在 Windows 下以盘符或者 开头,在 Unix/Linux 下以 / 开头)还是当前目录的相对路径(以 . 或者 .. 开头)——include_path 都会被完全忽略。例如一个文件以 ../ 开头,则解析器会在当前目录的父目录下寻找该文件。

当一个文件被包含时,其中所包含的代码继承了 include 所在行的变量范围。从该处开始,调用文件在该行处可用的任何变量在被调用的文件中也都可用。不过所有在包含文件中定义的函数和类都具有全局作用域。

 

vars.php
<!--?php

$color = &#39;green&#39;;
$fruit = &#39;apple&#39;;

?-->

test.php
<!--?php

echo A $color $fruit; // A

include &#39;vars.php&#39;;

echo A $color $fruit; // A green apple

?-->
<!--HTML 内容A is equal to 5用替代语法嵌套在 if 语句中。该 HTML 的内容仅在 $a 等于 5 时显示-->
<!--?php if ($a == 5): ?-->
A is equal to 5
<!--?php endif; ?--> 

<!--?php
    // elseif 与 else if 只有在类似上例中使用花括号的情况下才认为是完全相同。
    // 如果用冒号来定义if/elseif 条件,那就不能用两个单词的 else if,否则 PHP 会产生解析错误。 
    if($a --> $b):
        echo a is bigger than b;
        echo ...;
    elseif($a == $b):
        echo a is equals b;
    else:
        echo a is smaller than b;
    endif;
    
    // While - do-while(0)
    $i = 1;
    while($i < 10):
        echo $i++. ;
    endwhile;
    
    // for
    for ($i = 10; $i <= 11; $i++):
        echo $i. .
;
    endfor;
      
    // foreach
    $arr = array(1, 2, 3, 4, 5);     
    foreach($arr as $key => & $value):
        $value += 2;
        echo Key1: $key => Value: $value.
;
    endforeach;      

    // 数组最后一个元素的 $val 引用在 foreach 循环之后仍会保留。建议使用 unset() 来将其销毁。
    unset($value); 
    
    reset($arr);
    while (list($key, $value) = each($arr)):
        echo Key2: $key => Value: $value.
;
    endwhile;
    
    // switch - goto
    $i = 1;
    switch ($i):
    case 0:
        echo i equals 0;
        break;
    case 1:
        echo i equals 1;
        break;
    case 2:
        echo i equals 2;
        break;
    endswitch;    
?>



 

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
如何快速把你的 Python 代码变为 API如何快速把你的 Python 代码变为 APIApr 14, 2023 pm 06:28 PM

提到API开发,你可能会想到DjangoRESTFramework,Flask,FastAPI,没错,它们完全可以用来编写API,不过,今天分享的这个框架可以让你更快把现有的函数转化为API,它就是Sanic。Sanic简介Sanic[1],是Python3.7+Web服务器和Web框架,旨在提高性能。它允许使用Python3.5中添加的async/await语法,这可以有效避免阻塞从而达到提升响应速度的目的。Sanic致力于提供一种简单且快速,集创建和启动于一体的方法

PHP8.0中新的类型别名语法PHP8.0中新的类型别名语法May 14, 2023 pm 02:21 PM

随着PHP8.0的发布,新增了一种类型别名语法,使得使用自定义的类型变得更加容易。在本文中,我们将深入了解这种新的语法,以及它对开发人员的影响。什么是类型别名?在PHP中,类型别名本质上是一个变量,它引用另一个类型的名称。这个变量可以像其他类型一样使用,并在代码中的任何地方声明。这种语法的主要作用是为常用的类型定义自定义别名,使得代码更加易于阅读和理解。

PHP8.0中的父类调用语法PHP8.0中的父类调用语法May 14, 2023 pm 01:00 PM

PHP是一种广泛应用于Web开发的服务器端脚本语言,而PHP8.0版本中引入了一种新的父类调用语法,让面向对象编程更加方便和简洁。在PHP中,我们可以通过继承的方式创建一个父类和一个或多个子类。子类可以继承父类的属性和方法,并可以通过重写父类的方法来修改或扩展其功能。在普通的PHP继承中,如果我们想在子类中调用父类的方法,需要使用parent关键字来引用父

学会使用CSS选择器的基本语法学会使用CSS选择器的基本语法Jan 13, 2024 am 11:44 AM

掌握基本的CSS选择器语法,需要具体代码示例CSS选择器是前端开发中非常重要的一部分,它可以用来选择和修改HTML文档的各个元素。掌握基本的CSS选择器语法对于编写高效的样式表是至关重要的。本文将介绍一些常见的CSS选择器以及对应的代码示例。元素选择器元素选择器是最基本的选择器,可以通过元素的标签名来选择对应的元素。例如,要选择所有的段落(p元素),可以使用

乘方运算在C语言中的用法及语法乘方运算在C语言中的用法及语法Feb 18, 2024 pm 04:05 PM

C语言中乘方运算的语法和用法简介:在C语言中,乘方运算(poweroperation)是一种常见的数学运算,它用于计算一个数的幂。在C语言中,我们可以使用标准库函数或者自定义函数来实现乘方运算。本文将详细介绍C语言中乘方运算的语法和用法,并提供具体的代码示例。一、使用math.h中的pow()函数在C语言中,math.h标准库中提供了pow()函数,用于执

PHP8.0中的multi-catch语句PHP8.0中的multi-catch语句May 14, 2023 pm 01:51 PM

随着Web应用程序的发展,PHP语言在Web开发中得到了广泛应用。而在PHP8.0版本中,一个新的语言特性被引入——multi-catch语句。什么是multi-catch语句?在先前的PHP版本中,对于多个异常类型的处理,开发人员需要写多个catch语句。例如,如下代码块展示了对两种不同异常的处理:try{//Somecodethatmay

在 Python 3.10 中使用“match...case”在 Python 3.10 中使用“match...case”Apr 12, 2023 am 09:25 AM

“match...case”语法类似于其他面向对象语言中的 switch 语句,它旨在使结构与 case 的匹配更容易。让我们开始.语法“match...case”语法如下:def greeting(message): match message.split(): case ["hello"]: print("this message says hello") case ["hello", name]: print("

如何实现MySQL中解锁表的语句?如何实现MySQL中解锁表的语句?Nov 08, 2023 pm 06:28 PM

如何实现MySQL中解锁表的语句?在MySQL中,表锁是一种常用的锁定机制,用于保护数据的完整性和一致性。当一个事务正在对某个表进行读写操作时,其他事务就无法对该表进行修改。这种锁定机制在一定程度上保证了数据的一致性,但也可能导致其他事务的阻塞。因此,如果一个事务因为某种原因无法继续执行,我们需要手动解锁表,以便其他事务可以继续进行操作。MySQL提供了多种

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

에디트플러스 중국어 크랙 버전

에디트플러스 중국어 크랙 버전

작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.