我在配置文件中有一些变量和常量,我想在另一个类config.php
和myclass.php
中的一个类的方法中使用它们。
config.php
<?php
$a=1;
myclass.php
class MyClass
{
protected function a () {
include_once('config.php');
echo $a; //$a is undefined here
}
}
对此有更好的方法吗?
答案 0 :(得分:1)
您可以在配置文件中创建另一个类,它将作为所有配置值和操作的包装器。如果您在项目开发中为OOP赋予价值,这也是最好的方法。
config.php
<?php
/**
* PhpDoc...
*/
class YourConfig
{
/**
* Your constant value
*/
const DB_HOST = 'localhost';
/**
* @var string Some description
*/
private $layout = 'fluid';
/**
* Your method description
* @return string layout property value
*/
public function getLayout()
{
return $this->layout;
}
}
myclass.php
<?php
/**
* PhpDoc
*/
class MyClass
{
private $config;
public function __construct()
{
require_once( __DIR__ . '/config.php' );
$this->config = new Config();
}
protected function a()
{
// get a config
echo $this->config->getLayout();
}
}
您可以根据需要使用和扩展此方法。