PHP-do...while(0)的好处和用法

2019-03-21  本文已影响0人  程序员有话说

Linux内核和其他一些开源的代码中,经常会遇到这样的代码:

do{
 ...
}while(0)

同时在新公司的PHP代码中每一个控制器中都会遇到这些代码块,这样的代码一看就不是一个循环,do..while表面上在这里一点意义都没有,那么为什么要这么用呢?实际上,do{...}while(0)的作用远大于美化你的代码。
在PHP中我只意识到以下两点:

1.用于宏定义

在宏定义中避免出现逻辑错误,可代替 { }

2.用于代替goto

一段代码,想要执行到某个条件,后面的代码不继续执行,可以使用goto(不推荐),也可以使用do…while(0);保证了只执行一次,可以用break调出循环,后续语句不执行;

do
    {
        dosomething...;
        if(error)
            break;
        dosomething...;
        if(error)
            break;
        dosomething...;
    }
    while(0);
上一篇 下一篇

猜你喜欢

热点阅读