在PHP中include和require到底有什么区别呢?

在PHP中include和require到底有什么区别呢?

在PHP中include和require到底有什么区别呢?看这里的例子就知道了

include.php3的运行结果是:

  这是inc1.inc文件中的一个变量的值!

  这是inc2.inc文件中的一个变量的值!

  inc1.inc文件中的$int变量值为1!

 

require.php3的运行结果是:

  这是inc1.inc文件中的一个变量的值!

  inc1.inc文件中的$int变量值为2!

 

你可以看到在require.php3中$int变为了2,也就是说 inc1.inc中的语句被执行了2次,这样看来在循环中require语句只被解释一次,而且会把require语句所在的位置用require的文件 内容替代并运行,而在循环中include语句每次都会被解释运行。

 

[sonymusic]补充道:

require是只执行一次的,不,这么说不恰当。应当说,require是先替代,将指定文件的内容代进来,再运行,所以它不知道你设置了一FOR循环。而include语句,是什么时候执行到了,什么把指定文件的内容代进来,继续执行。

 

include.php3:

  <html>

  <body>

  <?

  for($i=1;$i<=2;$i++){

      include("inc$i.inc");

  }

  echo $var1;

  echo $var2;

  echo 'inc1.inc文件中的$int变量值为' . $int . "!<br>";

  ?>

  </body>

  </html>

 

require.php3:

  <html>

  <body>

  <?

  for($i=1;$i<=2;$i++){

      require("inc$i.inc");

  }

  echo $var1;

  echo $var2;

  echo 'inc1.inc文件中的$int变量值为' . $int . "!<br>";

  ?>

  </body>

  </html>

 

inc1.inc:

  <?

  $var1 = "这是inc1.inc文件中的一个变量的值!<br>";

  if(isset($int)){

      $int++;

  }

  else{

      $int = 1;

  }

  ?>

 

inc2.inc:

  <?

  $var2 = "这是inc2.inc文件中的一个变量的值!<br>";

  ?>

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据