Hello Friends我是一名新手程序员,非常非常新的PHP。我正在寻求帮助写一个小的PHP函数。情况是这样的:
我正在运行Joomla,我有一个模板,例如BLOCKS:
header.php
topmodules.php
mainbody.php
bottommodules.php
footer.php
我的所有块都放在一个目录中(/ layouts / blocks)。所有这些块都需要在主Index.php文件中加入。
我所知道的功能是这样的:
<?php
function get_header(){
require_once(TEMPLATEPATH.'/layouts/blocks/header.php');
}
?>
然后称之为:
<?php get_header(); ?>
但这不是很专业,我也必须为每个文件编写一个函数而且这也可以通过使用
来完成<?php require(YOURBASEPATH . DS .'layouts'. DS .'blocks'. DS . "header.php"); ?>
但我要找的是有一个函数/类可以从该目录中获取该PHP文件,只需传递该文件的名称,以便将来可以添加更多的块到该目录 - 编写函数并简单地称它们为:
<?php $this->getBlock('header') ?>
<?php $this->getBlock('topmodules') ?>
<?php $this->getBlock('mainbody') ?>
<?php $this->getBlock('bottommodules') ?>
<?php $this->getBlock('footer') ?>
请帮助。
答案 0 :(得分:1)
您只需要为您拥有的功能添加一个参数:
function getBlock($filename){
require_once(YOURBASEPATH . DS . 'layouts' .DS . 'blocks'. DS . $filename .'.php');
}
答案 1 :(得分:1)
function get_header_improved($s){
require_once(TEMPLATEPATH.'/layouts/blocks/' . $s . '.php');
}
<?php get_header_improved('header') ?>
<?php get_header_improved('topmodules') ?>
<?php get_header_improved('mainbody') ?>
<?php get_header_improved('bottommodules') ?>
<?php get_header_improved('footer') ?>
我没试过,但这应该有用。