我想这样
if(a.php没有被包含){
         include("a.php");
}

解决方案 »

  1.   

    比如,有下面一段代码:要分别从config里得到变量值,include写在函数里,第一个函数被调用后,可以正常返回值,但第二个函数,再用include_once就没用了,会报未定义变量 getfile_patn的错误。我不想把include写在最外面,在每个函数里要用变量时用globe来声明,我的想法是,在每个要取出config文件里的变量的函数里,取出想要的变量,函数完结时,就释放资源config文件,这样方便管理代码,每次想用时,直接include就行了。
    $pat=aa();
    echo $pat,PHP_EOL;
    $post=bb();
    echo '11',$post,PHP_EOL;function aa()
    {
            include_once(dirname(__FILE__).'/config.php');
            $patten = $getfile_patn["search"]['patten'];//$getfile_patn是config.php里的变量
            return $patten ;}function bb()
    {
      include_once(dirname(__FILE__).'/config.php');
        postfix = $getfile_patn["search"]['postfix'];
         turn $postfix ;}
      

  2.   

    include_once("a.php");
    已包含就不包含有人说这个函数效率低,因为他需要检查是否已经包含过了
    但是,用 php 写的检查程序能比 c 程序的速度快吗
      

  3.   


    就是因为function aa()中用了include_once,导致function bb中再也不能包含文件,进而不能使用文件中的变量了,这就是要解决的问题
      

  4.   

    函数里就该
    include(dirname(__FILE__).'/config.php');但 config.php 不能有函数或类定义
    如果有则需要用条件语句排除重复定义
      

  5.   


    function aa()
    {
            include_once(dirname(__FILE__).'/config.php');
            $patten = $getfile_patn["search"]['patten'];//$getfile_patn是config.php里的变量
            return $patten ;}
    这种函数倒也不多见....如老徐所说,如果你要取变量,并且需要重复使用的,请使用全局变量, 或者memcache 来处理,才是正确的解决方案.
      

  6.   

    get_included_files() — 返回被 include 和 require 文件名的 arrayhttp://www.php.net/manual/zh/function.get-included-files.php