gpt4 book ai didi

PHP为网页中的变量设置变量

转载 作者:行者123 更新时间:2023-12-04 05:42:39 25 4
gpt4 key购买 nike

我一直在用 php 和 html 制作网页,关注 this tutorial .我试图设置一个模板,我可以在其中设置各种变量,如页面标题、内容等。但是我在正确设置内容时遇到了一些麻烦。

在我的索引页面中,我的 php 开头如下:

<!DOCTYPE html>
<?php
include('includes/meta.php');
$md = new metadata();
$md->setTitle("HELLOOOO");
?>
...<!-- rest of html -->

然后在我的 Metadata 类中的 meta.php(包含 HTML):
<?php

class metadata
{
private $title = "default";
public function setTitle($title) { $this->title = $title; }
public function getTitle() { return $this->title; }


}
?>
<head>
<meta charset="utf-8">
<title>
<?php $md = new metadata();
echo $md->getTitle();?>
</title>

但是标题总是回显“默认”。

如何在单独的类/文件中正确设置变量?实现这一目标的最佳惯例是什么?

最佳答案

你需要一个单例,因为当你这样做时 new metadata(); ,您正在创建一个新对象,而实际上您希望该对象引用第一个创建的对象。

这是一个示例实现:

class metadata
{
private $title = "default";
private function __construct() {} // Private constructor

private static $instance = null;
public static function getInstance() {
if( self::$instance == null) {
self::$instance = new metadata();
}
return self::$instance;
}
public function setTitle($title) { $this->title = $title; }
public function getTitle() { return $this->title; }
}

现在,您需要执行以下操作:
$md = metadata::getInstance();

获取元数据类的对象。

See it work

关于PHP为网页中的变量设置变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11072530/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com