我需要重建头部脚本和链接,所以我想创建一个可以用于将来引用的类。
我开始喜欢:
class HeadClas{
public static $headprint;
function __construct(){
$this->headprint = "";
}
function addLinks(){
$this->headprint .= "addLinks";
return $this;
}
function addMeta(){
$this->headprint .= "addMeta";
return $this;
}
function printHead(){
return $this->headprint;
}
}
在上述情况下,我需要做
$print = new HeadClas;
$print->addLinks()->addMeta();
我想做
$print = new HeadClas;
$print->printHead();
我确实尝试了
function printHead(){
return $this->addMeta()->addLinks();
}
但不是我需要做的
$print->printHead()->headprint;
我在这里缺少什么? 任何帮助表示赞赏!
答案 0 :(得分:1)
首先,您应该使$headprint
字段非静态。使其静态使其成为所有未来实例的相同参考,这将导致不良结果。
printHead()
应打印该字段的内容,如方法名称所示。
class HeadClass {
public $headprint;
function __construct() {
$this->headprint = "";
}
function addLinks() {
$this->headprint .= "addLinks";
return $this;
}
function addMeta() {
$this->headprint .= "addMeta";
return $this;
}
function printHead() {
$this->addLinks()->addMeta();
echo $this->headprint;
}
}
$printer = new HeadClass();
$printer->printHead();