Section 14--Namespace_PHP Tutorial

WBOY
Release: 2016-07-21 16:01:15
Original
828 people have browsed it

/*
+-------------------------------------------------- ----------------------------------+
| = This article is read by Haohappy<>
| = Notes from the Chapter Classes and Objects
| = Translation + personal experience
| = To avoid possible unnecessary trouble, please do not reprint, thank you
| = We welcome criticisms and corrections, and hope to make progress together with all PHP enthusiasts!
| = PHP5 Research Center: http://blog.csdn.net/haohappy2004
+---------- -------------------------------------------------- ------------------+
*/
The namespace has been canceled in the official version of PHP5, and the content of this section is invalid--Haohappy note
Chapter Section 14 - Namespace
Naming variables, functions and classes is quite difficult. In addition to considering that the name of the variable should be easy to understand, you also have to worry about whether the name has been used somewhere else. In a short paragraph In scripts, the second question is fundamental. When you consider reusing your code, subsequent project code must avoid using the names you have used. Generally speaking, reusable code is always contained in a function or class , there are many possible naming conflicts that need to be dealt with. But naming conflicts can also occur between functions and classes. You can try to avoid this by prefixing all classes, or you can use a namespace statement. Namespace keyword names a block of code. Outside this block of code, the script must use the operator:: plus the name of the namespace to reference this block of code. The same method is used to reference static class members. Code within the namespace There is no need to declare a namespace, it is the default. This method is better than adding a prefix. Your code will become more compact and readable.
You may wonder whether it is possible to create hierarchical (embedded) ) namespace. The answer is no. But you can add a colon after the namespace name, and you can call variables, functions and classes that do not contain a colon in the name again. Colons are allowed in namespaces as long as they are not the first characters and the last character or followed by another colon. Colons in namespace names have no meaning to PHP, but if you use them to separate logical chunks, they can be a good indicator of what is going on in your code. The parent-child relationship.
/* Note: You can use this:
namespace animal:dog {}
namespace animal:pig {}
Use colons to illustrate the parent-child relationship .
*/
You may not include anything other than function, class or constant definitions within a namespace statement. This will prevent you from using them to improve older function libraries that use global variables. Namespaces are the most Suitable for object-oriented. Constants within a namespace use the same syntax as constants in a class.
Example 6.17 shows how to use a namespace.
Listing 6.17 Using a namespace

Copy code The code is as follows:
namespace core_php:utility
{
class textEngine
{                                                                                                 ($text));                                                                                                   $e = new textEngine;
return($e->uppercase($text));
$e = new core_php :utility::textEngine;
print($e->uppercase("from object") . "
");
//test function in namespace Test function in namespace
print(core_php:utility::uppercase("from function") . "
");
//bring class into global namespace Import class textEngine from core_php:utility;
$e2 = new textEngine;
?>
The Import statement imports a certain part of the namespace into the global namespace.
To import members of a single namespace, you can specify the type For constant, function or class, then write the name of the member;
//For example, import class XXX
If you want to import all members of a specific type, you can use * instead of the name;
/ /For example, import constant * imports all constants
If you want to import all members of all types, just use *.
//For example, import *
After the members, use the from keyword plus the namespace Name.
//For example, import class textEngine from core_php:utility;
In short, you have to write a statement like import * from myNamespace or import class textEngine from core_php:utility, just like in Example 6.17.


http://www.bkjia.com/PHPjc/316928.html

www.bkjia.com

true

http: //www.bkjia.com/PHPjc/316928.html

TechArticle
/* +--------------------- -------------------------------------------------- --------+ |=This article is Haohappy's notes from the chapter ClassesandObjects when reading CorePHP Programming |=Translation is mainly + personal...

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template