• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

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

发布: 2007-6-21 15:32 | 作者:   | 来源:   | 查看: 15次 | 进入软件测试论坛讨论

领测软件测试网

   
   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>";
  ?>

  

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网