开发者

Backslash syntax when creating objects

开发者 https://www.devze.com 2023-01-22 20:17 出处:网络
The path in require and require_once is like (dir1/dir2/test.php). Can we create objects the same like $obj= new class1/class2;?

The path in require and require_once is like (dir1/dir2/test.php).

Can we create objects the same like $obj= new class1/class2;?

If yes, please explain.

http://php-fedex-api-wrapper.googlecode.com/svn/trunk/htdocs/example1.php

$rateRequest = new ComplexType\RateRequ开发者_如何转开发est();


It is not using the path, it is using the namespace (ComplexType); a feature built-into PHP 5.3.

More Info:

  • http://php.net/manual/en/language.namespaces.importing.php

If however, you want to autoload certain classes, take a look at __autoload magic function.

Many developers writing object-oriented applications create one PHP source file per-class definition. One of the biggest annoyances is having to write a long list of needed includes at the beginning of each script (one for each class).

In PHP 5, this is no longer necessary. You may define an __autoload function which is automatically called in case you are trying to use a class/interface which hasn't been defined yet. By calling this function the scripting engine is given a last chance to load the class before PHP fails with an error.

Example:

function __autoload($class_name) {
    include $class_name . '.php';
}

$obj  = new MyClass1();
$obj2 = new MyClass2(); 


\ is the namespace operator in php 5.3, it is sort of a logical compartment for classes and functions: http://www.php.net/manual/en/language.namespaces.rationale.php

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号