Php 如何在Codeigniter中定义站点范围的变量?

Php 如何在Codeigniter中定义站点范围的变量?,php,codeigniter,Php,Codeigniter,如何在我的站点上的所有视图中访问以下变量: $site_name = 'My Site'; $author = 'Jake'; $loggedin = (isset($_COOKIE['loggedin'])) ? true : false; 我正在寻找一种Codeigniter方法来实现这一点,而不仅仅是将上述内容放在一个文件中,并在我加载的每个视图中重复“包括”它们。方法#1: 您可以在一个文件中定义这些变量,并将该文件包含在CodeIgniter的index.php中(这样就不需要将其包

如何在我的站点上的所有视图中访问以下变量:

$site_name = 'My Site';
$author = 'Jake';
$loggedin = (isset($_COOKIE['loggedin'])) ? true : false;
我正在寻找一种Codeigniter方法来实现这一点,而不仅仅是将上述内容放在一个文件中,并在我加载的每个视图中重复“包括”它们。

方法#1:

您可以在一个文件中定义这些变量,并将该文件包含在CodeIgniter的index.php中(这样就不需要将其包含在每个视图文件中)。此后,您可以在所有视图/控制器文件中访问这些变量。但无论何时使用变量,都必须声明它为全局变量。例如,在您看来:

global $site_name;

//--use $site_name
方法#2:

在配置文件中定义这些变量(CodeIgniter的默认值或自定义值)。然后,您可以通过以下方式访问:

$this->config->item('site_name');

方法#1:

您可以在一个文件中定义这些变量,并将该文件包含在CodeIgniter的index.php中(这样就不需要将其包含在每个视图文件中)。此后,您可以在所有视图/控制器文件中访问这些变量。但无论何时使用变量,都必须声明它为全局变量。例如,在您看来:

global $site_name;

//--use $site_name
方法#2:

在配置文件中定义这些变量(CodeIgniter的默认值或自定义值)。然后,您可以通过以下方式访问:

$this->config->item('site_name');

可能重复的@Andrew Marshall我在发布之前尝试了该答案的所选解决方案,它给了我一个控制器未找到错误。可能重复的@Andrew Marshall我在发布之前尝试了该答案的所选解决方案,它给了我一个控制器未找到错误。