PHP“全球”包括

时间:2011-04-20 08:48:51

标签: php

Ohai, 我正在编写一个小的PHP应用程序,使用一个单独的config.php文件和一个functions.php,其中包含我将在应用程序中使用的所有自定义函数。现在,我真的必须在每个函数中包含config.php,还是有办法在一步中包含文件中所有函数的配置?

感谢。

5 个答案:

答案 0 :(得分:2)

当你要访问其他php文件中的方法和类时,你必须使用require,require_once,include或include_once,除非你使用某种框架。

尝试构建一个包含所有包含的全局文件,这是您必须包含的唯一文件。

答案 1 :(得分:1)

创建一个包含所有global.php(或require)语句的include,只需包含该文件。

答案 2 :(得分:1)

执行此操作的非常标准方法是从index.php文件中包含它。你的index.php应该包括你的其他页面:

include 'config.php';
include 'functions.php';
$page = isset($_REQUEST['page']) ? $_REQUEST['page'] : 'home';

switch($page)
{
    case 'home':           break;
    case 'mail':           break;
    case 'contact':        break;
    default:
        $page = 'home';
}

include("$page.php");

因此,在index.php中,您可以包含所需的任何页面。

答案 3 :(得分:1)

将你的函数转换为类的方法,你永远不会回头。

<?php 
 class MyClass { 
   var $config;     

   function __construct($config) {
     $this->config = $config;
   }

   function myFunc($myArg) {
     return $myArg * $this->config['someSetting'];
   }
}

的问候,

/吨

答案 4 :(得分:0)

您也可以在php.ini中使用auto_prepend_file来进行懒惰。或者通过.htaccess:

php_value auto_prepend_file /home/www/host1235/htdocs/lib/config.php

但如果您的应用程序一致,那么这真的是一个选项,所有脚本都需要非常配置文件。否则,需要为每个目录重新设置此选项。