在Joomla中包含PHP文件

8

我有一个日志记录器类,需要记录我的应用程序的处理过程。当我的文件位于 includes 文件夹中时,我如何在 Joomla 中包含此文件?我不想每次都使用 ../../../ 包含文件,因为这样我必须手动计算每次包含类时的路径。是否有任何方法可以生成相对于该文件的包含行?


2
我认为“close”这个回复非常没有建设性。不过下面还有一些有建设性的回复。似乎有些人很喜欢滥用他们的声望点特权。 - Some Newbie
3个回答

12

你可以使用来自此处的Joomla常数用于JPath:http://docs.joomla.org/JPath,像这样:

include_once (JPATH_ROOT.DS.'includes'.DS.'some.class.php');

您可以将JPATH_ROOT替换为以下任何内容:

JPATH_SITE 
JPATH_BASE 

2
请注意,在2.5版本中,DS已被弃用,并在3.0版本中移除。 - Valentin Despa
你是正确的 @Valentin Despa,在Joomla 3中它是DIRECTORY_SEPARATOR - bumerang
你甚至不需要它。只需使用 / 即可。 - Valentin Despa

2

随处使用它

<?php
include $_SERVER['DOCUMENT_ROOT']."/lib/sample.lib.php";
?>

2
在 Joomla 2.5+ 中,永远不要使用 include_once 或 require_once 来包含类文件。PHP 在加载文件之前必须检查文件是否已经被加载。
自 Joomla 2.5 以来,有 JLoader::register() 方法,它不会使用任何内存,除非您需要执行类中的方法。 http://developer.joomla.org/manual/ch01s04.html

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接