downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

call_user_method_array> <Funciones de Clases/Objetos
[edit] Last updated: Fri, 24 May 2013

view this page in

__autoload

(No hay información de versión disponible, podría estar únicamente en SVN)

__autoloadIntenta cargar una clase sin definir

Descripción

void __autoload ( string $class )

Puede definir esta función para habilitar lacarga de clases.

Parámetros

class

Nombre de la clase a cargar

Valores devueltos

No devuelve ningún valor.

Ver también



add a note add a note User Contributed Notes __autoload - [2 notes]
up
1
keyboardSmasher
1 month ago
qeremy, your code is incorrect.

<?php
include_once("./myClass.php");
include_once(
"./myFoo.php");
include_once(
"./myBar.php");

$obj = new myClass();
$foo = new Foo();
$bar = new Bar();
?>

<?php
$foo
= new Foo();
$bar = new Bar();
?>

should be:

<?php
$foo
= new myFoo();
$bar = new myBar();
?>
up
15
qeremy
1 year ago
Even I have never been using this function, just a simple example in order to explain it;

./myClass.php
<?php
class myClass {
    public function
__construct() {
        echo
"myClass init'ed successfuly!!!";
    }
}
?>

./index.php
<?php
// we've writen this code where we need
function __autoload($classname) {
   
$filename = "./". $classname .".php";
    include_once(
$filename);
}

// we've called a class ***
$obj = new myClass();
?>

*** At this line, our "./myClass.php" will be included! This is the magic that we're wondering... And you get this result "myClass init'ed successfuly!!!".

So, if you call a class that named as myClass then a file will be included myClass.php if it exists (if not you get an include error normally). If you call Foo, Foo.php will be included, and so on...

And you don't need some code like this anymore;

<?php
include_once("./myClass.php");
include_once(
"./myFoo.php");
include_once(
"./myBar.php");

$obj = new myClass();
$foo = new Foo();
$bar = new Bar();
?>

Your class files will be included "automatically" when you call (init) them without these functions: "include, include_once, require, require_once".

 
show source | credits | sitemap | contact | advertising | mirror sites