include、include_once、require、require_once區別

做用上

  • 同:包含文件並運行(使用位置:函數內、函數外、方法內)php

  • 異:include_once/require_once是include/require基礎上進一步封裝,增長了一個「文件是否已經包含」的判斷函數

性能上

  • 異:因爲include_once/require_once是include/require基礎上進一步封裝,因此include_once/require_once比include/require速度慢性能

使用上

  • 異:require包含的文件存在錯誤或者不存在的話,那麼程序就會中斷執行了,並顯示致命錯誤;
    include包含的文件存在錯誤或者不存在的話,那麼程序不會中端,而是繼續執行,並顯示一個警告錯誤。ui

  • 因此通常重要文件用require(如:類庫),不重要的用include(如:模板)code

返回值上

  • 同:若是被包含的文件內用return返回,那麼不管include/require就會有return的值返回;
    若是被包含的文件內沒有使用return返回,那麼不管include/require,成功返回int(1),失敗返回boolean(false)模板

2.php
    <?php  
        return 'wakaka';  
    ?> 

1.php
    <?php  
        $ret = include '2.php';  
        echo $ret; //輸出wakaka  
    ?>
  • 異:若是使用include_once/require_once包含文件,成功返回boolean(true),失敗返回boolean(false),若是前面已經包含了該文件,文件內使用return返回,那麼再使用include_once/require_once包含相同文件時是返回boolean(true)require

相關文章
相關標籤/搜索