我目前是初学者,刚开始我的第一个大项目,而我有空闲时间,我想做的基本上是将变量写入html / tpl文档,我目前有工作了,这是我的代码:
private function index(){
$username = 'MyUsername';
$onlineTime = 'MyOnlineTime';
$this->setParams('Username', $username); // $username Will be replaced by database queried results once completed.
}
这是setParams函数。
function setParams($item1, $item2){
ob_start();
$theme = 'default';
include_once T . '/'.$theme.'/index.php'; // T . is defined at the beginning of the document.
if ((($html = ob_get_clean()) !== false) && (ob_start() === true))
{
echo preg_replace('~{(['.$item1.']*)}~i', ''.$item2.'', $html, 1);
}
}
这是html / tpl文档中的编码。
{username} has been online for {onlineTime} Hours
对于你们中的一些人来说这可能是一个非常简单的代码,但这是我的第一次尝试,这就是我所能做的。
我想要做的就是让你可以根据需要多次设置PARAS,而不像这样更改$ variable名称:
private function index(){
$username = 'MyUsername';
$onlineTime = 'MyOnlineTime';
$this->setParams('Username',$username);
$this->setParams('OnlineTime', $onlineTime);
}
同时保持setParams($item1, $item2)
但是你可以想象这只会完全削减代码。有谁知道这个问题的解决方案?我整天都在搜索,没有任何真正的运气。
先谢谢,
拉尔夫
答案 0 :(得分:0)
我认为你需要的是一个带静态方法的类;
<?php
class Params {
public static $params = array();
public static function setParam($key, $value) {
self::$params[$key] = $value;
}
public static function getParam($key) {
if (isset(self::$params[$key])) {
return self::$params[$key];
}
}
}
// Usage
// Set Username
Params::setParam("username", "JohnDoe");
Params::setParam("password", "12345");
echo Params::getParam("username");
echo Params::getParam("password");