以下是php帮助手册上的示例,意思是说有这样一种语法,但是没有说,这种特殊用法的功能是什么,用在何处,故发贴问一下
<?php
do {
if ($i < 5) {
echo "i is not big enough";
break;
}
$i *= $factor;
if ($i < $minimum_limit) {
break;
}
echo "i is ok"; /* process i */} while(0);
?>
资深的 C 语言用户可能熟悉另一种不同的 do-while 循环用法,把语句放在 do-while(0) 之中,在循环内部用 break 语句来结束执行循环。以下代码片段示范了此方法:
如果还不能立刻理解也不用担心。即使不用此“特性”也照样可以写出强大的代码来。
if ($i < 5) {
echo "i is not big enough";
} else {
$i *= $factor;
if ($i < $minimum_limit) {
//...
} else {
echo "i is ok";
}
}你觉得差异在哪里?
http://tieba.baidu.com/f?kz=263292825
为了break因为php里没有goto语句,所以只能用do while + break代替了
明显是goto语句比较好,这只是无奈之举,你瞧这代码,很多人都看不懂,增加阅读困难。何从几时,goto语句变得人人喊打,好像一旦用了goto就被视为是新手菜鸟,简直莫名其妙。