PHP 一次性变量

一次性变量就是只在第一次判断为真或者假, 但是之后任何基于那个变量的判断都和第一次的结果相反. 如果有一段代码只在他首次执行的时候有某些操作要执行, 而之后都不需要, 那么一次性变量就非常有用. 如果用带索引的for循环可以通过判断索引是否等于0来判断是不是首次执行, 但如果是for each或者是函数被循环执行, 查看索引就无效了. 一个通用的办法是

 
          if( !defined('ONEOFF')) {
              define('ONEOFF', '');
              // do things for the first loop
          } else {
              // do things for the rest
          }
 

define定义一个命名的常数, 具备全局作用域, 因此上述方法在循环执行函数中也有效.