可能非常小学生问题,我想使用变量,如成员变量而不是引号,我怎么去做?
$something->title
而不是
something("title")
我可以用一个功能来做后者,但我认为如果我可以使用前者,它会更整洁更好。
答案 0 :(得分:0)
->
是PHP中的OOP Construct(成员运算符)。创建$something
作为对象,然后初始化它:
class Something {
public $title;
}
并以这种方式初始化:
$something = new Something;
$something->title = "Whatever";
如果您想在创建过程中初始化,可以使用构造函数:
class Something {
public $title;
public function __construct ($newTitle) {
$this->title = $newTitle;
}
}
并以这种方式初始化:
$something = new Something("Whatever");
在您的使用案例中......
您想将它用于设置对象。好吧,你可以定义"设置框架这样:
class DataBase {
private $host;
private $user;
// ---
// ---
// ---
}
class Settings {
public $db = new DataBase("host", "user", "pass", "name");
// ---
// ---
// ---
}
$settings = new Settings();
然后对于个人而言,你可以做这样的事情:
$settings->title
$settings->db->connect();
答案 1 :(得分:0)
您需要使用PHP类来定义类并调用其属性:
class Test
{
var $title;
public function __construct()
{
$this->title = 'hello';
}
}
$obj= new Test();
echo $obj->title;
答案 2 :(得分:0)
好吧,也许我错过了这一点。
假设我有一个设置表,它有id,name,setting等列,name列包含许多你可能要设置的常规内容,所以site_name,date_format,email_address,meta_title等等,这些东西都可以通过在名称对应的设置列中有一个值,所以我想说...
echo $ setting-> site_name, echo $ setting-> date_format
等...我明白我应该通过使用一个类,但对于我的生活,我不能引用一个表值,我可以引用一个列名。
感谢您的帮助。