8

I have a logger class that I need to log my application processing. How can I include this file in Joomla, when my file is located in the includes folder. I don't want to always have to include the file using ../../../, because then I have to manually count paths everytime I include my class. Is there any way to generate the line that will include that file relatively?

ApolloLV
  • 152
  • 8
newbie
  • 24,286
  • 80
  • 201
  • 301
  • 2
    I find this "close" as very unconstructive. There are constructive responses below though. It seems like some people get high on abusing their karma point privileges. – Some Newbie Jul 01 '14 at 07:56

3 Answers3

12

You could use the Joomla constants for JPath from here: http://docs.joomla.org/JPath like so:

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

You can replace JPATH_ROOT with any of the following:

JPATH_SITE 
JPATH_BASE 
Martin
  • 10,294
  • 11
  • 63
  • 83
2

In joomlla 2.5 + never use include_once or require_once to include a class file. PHP has to check if the file has already been loaded before loading the file.

Since joomla 2.5 there is the JLoader::register() method which doesn't use any memory unless you need to execute a method within the class.

http://developer.joomla.org/manual/ch01s04.html

Robert Went
  • 2,944
  • 2
  • 17
  • 18
2

use this every where

<?php
include $_SERVER['DOCUMENT_ROOT']."/lib/sample.lib.php";
?>
Mohammad Efazati
  • 4,812
  • 2
  • 35
  • 50