php5.3 goto函数介绍和示例


Posted in PHP onMarch 21, 2014

goto操作符是PHP5.3+后新增功能,用来跳转到程序的另一位置;用法很简单:goto后面带上目标位置的标志,在目标位置上用目标名加冒号标记,如下:

goto a;
echo '三水点靠木';
a:
    echo 'https://3water.com';

但是goto的目标位置只能同一文件和作用域【既不能跳转到一个函数和类方法中】,当然它可以跳出循环,但是不能跳入循环:

<?php
for($i = 0; $i < 3; $i++)
{
    echo $i . '<br>';
    if($i == 1) goto end;
}
end : 
    echo '直接end结束了';

goto操作符可以用来跳转到程序中的某一指定位置。该目标位置可以用目标名称 加上冒号来标记。PHP中的goto有一定限制,只能在同一个文件和作用域中跳转, 也就是说你无法跳出一个函数或类方法,也无法跳入到另一个函数。你也无法跳入到任何循环或者switch 结构中。常见的用法是用来跳出循环或者switch,可以代替多层的break。

<?php
goto a;
echo 'Foo';a:
echo 'Bar';
?>

以上例程会输出: Bar

goto 跳出循环示例

<?php
for($i=0,$j=50; $i<100; $i++) {
  while($j--) {
    if($j==17) goto end; 
  }  
}
echo "i = $i";
end:
echo 'j hit 17';
?>

以上例程会输出: j hit 17

以下写法无效

<?php
goto loop;
for($i=0,$j=50; $i<100; $i++) {
  while($j--) {
    loop:
  }
}
echo "$i = $i";
?>

以上例程会输出:

 Fatal error: 'goto' into loop or switch statement is disallowed in
script on line 2

PHP 相关文章推荐
PHP 设计模式之观察者模式介绍
Feb 22 PHP
PHP简洁函数(PHP简单明了函数语法)
Jun 10 PHP
PHP数据集构建JSON格式及新数组的方法
Nov 07 PHP
php之Memcache学习笔记
Jun 17 PHP
php导入导出excel实例
Oct 25 PHP
8个必备的PHP功能实例代码
Oct 27 PHP
php实现过滤UBB代码的类
Mar 12 PHP
php倒计时出现-0情况的解决方法
Jul 28 PHP
PHPExcel导出2003和2007的excel文档功能示例
Jan 04 PHP
基于thinkPHP类的插入数据库操作功能示例
Jan 06 PHP
PHP使用ActiveMQ实现消息队列的方法详解
May 31 PHP
PHP过滤器 filter_has_var() 函数用法实例分析
Apr 23 PHP
php ctype函数中文翻译和示例
Mar 21 #PHP
php的declare控制符和ticks教程(附示例)
Mar 21 #PHP
php像数组一样存取和修改字符串字符
Mar 21 #PHP
easyui的tabs update正确用法分享
Mar 21 #PHP
php设置session值和cookies的学习示例
Mar 21 #PHP
一个显示效果非常不错的PHP错误、异常处理类
Mar 21 #PHP
一漂亮的PHP图片验证码实例
Mar 21 #PHP
You might like
Windows下PHP5和Apache的安装与配置
2006/09/05 PHP
用PHP和ACCESS写聊天室(七)
2006/10/09 PHP
一个数据采集类
2007/02/14 PHP
PHP 字符串 小常识
2009/06/05 PHP
利用PHP判断是否是连乘数字串的方法示例
2017/07/03 PHP
用JQuery 实现的自定义对话框
2007/03/24 Javascript
javascript 随机展示头像实现代码
2011/12/06 Javascript
在图片上显示左右箭头类似翻页的代码
2013/03/04 Javascript
javascript调试过程中找不到哪里出错的可能原因
2013/12/16 Javascript
node爬取微博的数据的简单封装库nodeweibo使用指南
2015/01/02 Javascript
JS使用ajax从xml文件动态获取数据显示的方法
2015/03/24 Javascript
javascript正则表达式总结
2016/02/29 Javascript
JS中使用media实现响应式布局
2017/08/04 Javascript
利用javascript如何随机生成一定位数的密码
2017/09/22 Javascript
jquery实现的简单轮播图功能【适合新手】
2018/08/17 jQuery
深入理解Vue 的钩子函数
2018/09/05 Javascript
JavaScript ES6中的简写语法总结与使用技巧
2018/12/30 Javascript
JavaScript递归函数定义与用法实例分析
2019/01/24 Javascript
Vue实现可移动水平时间轴
2020/06/29 Javascript
python远程登录代码
2008/04/29 Python
python中定义结构体的方法
2013/03/04 Python
python logging 日志轮转文件不删除问题的解决方法
2016/08/02 Python
python书籍信息爬虫实例
2018/03/19 Python
Flask入门之上传文件到服务器的方法示例
2018/07/18 Python
TensorFlow实现Logistic回归
2018/09/07 Python
Python安装pycurl失败的解决方法
2018/10/15 Python
Python求两个圆的交点坐标或三个圆的交点坐标方法
2018/11/07 Python
python3中类的继承以及self和super的区别详解
2019/06/26 Python
数学专业推荐信范文
2013/11/21 职场文书
司机检讨书
2014/02/13 职场文书
揭牌仪式主持词
2014/03/19 职场文书
房产继承公证书
2014/04/09 职场文书
创业计划书之韩国烧烤店
2019/09/19 职场文书
优秀范文:读《红岩》有感3篇
2019/10/14 职场文书
Mysql排序的特性详情
2021/11/01 MySQL
Python用any()函数检查字符串中的字母以及如何使用all()函数
2022/04/14 Python