1

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\RateRequest();
1

2 Answers 2

12

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

More Info:

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(); 
Sign up to request clarification or add additional context in comments.

Comments

3

\ 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

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.