代码之家  ›  专栏  ›  技术社区  ›  Uyghur Lives Matter

php包含一次

php
  •  5
  • Uyghur Lives Matter  · 技术社区  · 14 年前

    使用php的 include_once require_once 而不是使用c-like include 带着头球后卫?

    即,

    include_once 'init.php';
    

    对战

    include 'init.php';
    
    //contents of init.php
    if (!defined('MY_INIT_PHP')) {
      define('MY_INIT_PHP', true);
      ...
    }
    

    4 回复  |  直到 7 年前
        1
  •  9
  •   selfawaresoup    14 年前

    “require_once”和“include_once”通常比“require”和“include”慢一点,因为它们会检查文件是否已加载。

    但是,这种区别只在真正复杂的应用程序中才重要,在这些应用程序中,您无论如何都应该执行自动加载,如果您的自动加载程序编码良好,那么就不需要执行一次/include一次。

    在大多数简单的应用程序中,为了方便起见,最好使用require_once/include_once。

    header-guard方法只是应该避免的混乱代码。试想一下,如果你忘了签入许多文件中的一个。调试可能是个噩梦。

    如果您的应用程序适合,只需使用自动加载。这是最快捷、最方便、最干净的方法。

        2
  •  2
  •   hongliang    14 年前

    我希望include_比在included文件中使用header guard快一次,因为您仍然需要在后者中打开和加载文件。

        3
  •  1
  •   Quasipickle    14 年前

    你可以用定时器尝试10000次,但我认为定义我的初始化php要快得多。

    老实说,这可能是一个很小的区别,没有实际需要关心,除非你是为像Facebook这样的网站工作。

        4
  •  0
  •   mvbl fst    14 年前

    如果脚本内容是唯一的,我总是使用require_一次。