PHP return语句另类用法不止是在函数中

yipeiwu_com5年前PHP代码库

分享下PHP return语句的另一个作用,在bbPress的代码中看到的一个奇葩使用方法。

一直以为,return只能出现在函数中,直到看了bbPress的代码:

<?php
require_once('./bb-load.php');

bb_repermalink(); // The magic happens here.

if ( $self ) {
if ( strpos($self, '.php') !== false ) {
require($self);
} else {
require( BB_PATH . 'profile-base.php' );
} // www.jb51.net
return;
}

难道 return 还能出现在函数之外?这在C语言是无法想象的。

查了一下 PHP 手册:如果在一个函数中调用 return 语句,将立即结束此函数的执行并将它的参数作为函数的值返回。如果在全局范围中调用,则当前脚本文件中止运行。

相关文章

PHP程序61条面向对象分析设计的经验小结

(1)所有数据都应该隐藏在所在的类的内部。 (2)类的使用者必须依赖类的共有接口,但类不能依赖它的使用者。 (3)尽量减少类的协议中的消息。 (4)实现所有类都理解的最基本公有接口[例如...

PHP工厂模式简单实现方法示例

本文实例讲述了PHP工厂模式简单实现方法。分享给大家供大家参考,具体如下: 工厂模式是一种类,建立了一个工厂来根据所需来创建对象,这种方式在多态性编程中是很重要的,允许动态替换类,修改配...

深入PHP内存相关的功能特性详解

可能有的读者碰到过类似下面的错误吧:Fatal error: Allowed memory size of X bytes exhausted (tried to allocate Y...

PHP实现通过strace定位故障原因的方法

本文实例讲述了PHP实现通过strace定位故障原因的方法。分享给大家供大家参考,具体如下: 俗话说:不怕贼偷,就怕贼惦记着。在面对故障的时候,我也有类似的感觉:不怕出故障,就怕你不知道...

php实现上传图片文件代码

代码很简单,这里我们就不多废话了,直接奉上源码 <?php // 注册表单的姓名 $name=""; $nameErr=""; if ($_SERVER["REQUES...