Domanda

I have a autoload function that looks like so:

function __autoload_HTTP_Client($class_name) {
    $HC = $class_name . '.class.php';
    return require_once($HC);
}

when i call a class i use the $users = new users();

What i want to do is place my class files in folders within my class directory. So i will have

/users/users.class.php
/general/general.class.php

In my users class i want to be able to extend general.class.php

class users extends general {

}

because I want to be able to use $this-> from general so i dont want to use include. but when i do extend general it says that the class is not found since its in a different directory.

Any ideas on fixing this (I know the autoload needs to change to use directory/ $file.class.php

but how can i extend a class that is outside of the directory of the current class.

È stato utile?

Soluzione

Use:

set_include_path(get_include_path().':/users:/general');

The above will then look for files within those directories, and you don't have to use a path, just filename, etc on the include/require inside the autoloader.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top