weiki1998牛人大佬:

  1. <?php
  2. function fa($a) {
  3.         return ’00’;
  4.         exit;
  5.         if ($a == 0) {
  6.                 return false;
  7.                 exit;
  8.         } else {
  9.                 return true;
  10.                 exit;
  11.         }
  12. }
  13. $a = 100;
  14. if (fa($a)) {
  15.         echo ‘还在运行’;
  16. }
  17. echo ‘0000000000000000000’;

如上这些代码,如果运行,会正常向下执行到000000这里;

  1. <?php
  2. function fa($a) {
  3.         echo ’00’;
  4.         exit;
  5.         if ($a == 0) {
  6.                 return false;
  7.                 exit;
  8.         } else {
  9.                 return true;
  10.                 exit;
  11.         }
  12. }
  13. $a = 100;
  14. if (fa($a)) {
  15.         echo ‘还在运行’;
  16. }
  17. echo ‘0000000000000000000’;

如果改成这样,就不会执行到0000这里了

就修改了 function fa($a)的第一句,一个是return  一个是echo

然后都用了exit

第一种情况是在函数内起作用了,不会全局退出,第二种情况,好像全局退出了

今天突然想起来这个问题,原理是啥

pi9牛人大佬:
exit是退出整个程序,return是方法返回语句