search
HomeBackend DevelopmentPHP TutorialOverview of use keyword in PHP, overview of PHPuse keyword_PHP tutorial

Overview of use keyword in PHP, overview of PHPuse keyword

In many open source systems such as the osCommerce framework, the keyword use will be found in their source code. For example, in the osCommerce framework, this source code appears in the index.php file:

use osCommerce\OM\Core\Autoloader;
use osCommerce\OM\Core\OSCOM;

In fact, the use keyword of php was introduced from php5.3 or above. Its function is to alias an external reference. This is an important feature of namespaces, which is similar to the creation of connection flags for files or directories in Unix-based file systems.

PHP namespace supports three alias methods (or references):

1. Give a class an alias

2. Give an alias to an interface

3. Give an alias to a namespace

These three methods are all done using the use keyword. The following are examples of the three aliases:
//Example #1 importing/aliasing with the use operator

<&#63;php
namespacefoo;
useMy\Full\ClassnameasAnother;

//thisisthesameasuseMy\Full\NSnameasNSname
useMy\Full\NSname;

//importingaglobalclass
useArrayObject;

$obj=newnamespace\Another;//instantiatesobjectofclassfoo\Another
$obj=newAnother;//instantiatesobjectofclassMy\Full\Classname
NSname\subns\func();//callsfunctionMy\Full\NSname\subns\func
$a=newArrayObject(array(1));//instantiatesobjectofclassArrayObject
//withoutthe"useArrayObject"wewouldinstantiateanobjectofclassfoo\ArrayObject
&#63;>

One thing to note is that for named names, the full name includes the separator, such as FooBar, and FooBar cannot be used, and the "" in the header of "FooBar" is unnecessary. It is also not recommended to write like this. The imported name must be the full name and have no programmatic relationship with the current namespace.

PHP can also declare multiple declarations on the same line, which is equivalent to the above writing

<&#63;php
useMy\Full\ClassnameasAnother,My\Full\NSname;

$obj=newAnother;//instantiatesobjectofclassMy\Full\Classname
NSname\subns\func();//callsfunctionMy\Full\NSname\subns\func
&#63;>

It is also worth mentioning that the introduction is executed at compile time, so the alias will not affect the dynamic class , for example:

<&#63;php
useMy\Full\ClassnameasAnother,My\Full\NSname;

$obj=newAnother;//instantiatesobjectofclassMy\Full\Classname
$a = 'Another';
$obj = New $a; // instantiates object of class Another
&#63;>

Since variable $a is assigned a value of 'Another' here, $a is located in Classname during compilation.

For more detailed usage, readers can refer to the php manual or follow subsequent related articles on this site.

php use php namespace What is going on

1. namespace Zend\Http\PhpEnvironment;

This code defines a namespace, which you can understand as defining a domain name named Zend\Http\PhpEnvironment.

After definition, the classes, interfaces, const, etc. declared below are all in the declared "domain". When referencing an include file that declares a namespace, and if you want to call something in it, you must:

Adjust the current script to this domain name, otherwise, you have to use the full name of namesapce.

For example, inc.php file:

namespace Zend\Http\PhpEnvironment;
class Bar {}//define a class

when called by other files :

// The first way to access Foo, use the full name
require 'inc.php';
$foo = new \Zend\Http\PhpEnvironment\Bar();

//The second method of accessing Foo
namespace Foo; //Adjust the current script to the ns domain of Foo, and the namespace declaration must be in the first sentence
require 'inc.php';
$foo = new Bar();

2. The purpose of the use keyword is to use the alias of ns:

For example, the above

// is the first to access Foo This method uses the full name
require 'inc.php';
$foo = new \Zend\Http\PhpEnvironment\Bar();

After using uses, the writing is as follows:

use \Zend\Http\PhpEnvironment as pe; //Define alias

$foo = new \pe\Bar(); //Use short alias to replace original

if Omit the following as...., then you can directly replace it with the text of the last section, for example, the above:

use \Zend\Http\PhpEnvironment; //Define alias
$ foo = new \PhpEnvironment\Bar(); //Replace the original

======================== with a short alias ========================

Relevant content in the official PHP manual:

In PHP, namespace naming Space is used to solve two types of problems encountered when creating reusable code such as classes or functions when writing class libraries or applications:

1. User-written code and PHP internal classes/functions/constants Or name conflicts between third-party classes/functions/constants.
2. Create an alias (or short) name for a very long identifier name (usually defined to alleviate the first type of problem) to improve the readability of the source code.

PHP namespaces provide a way to group related classes, functions, and constants together.

PHP namespace supports two ways of using aliases or imports: using aliases for class names, or using aliases for namespace names. Aliases are implemented through the operator use. ...The rest of the text>>

What are the keywords in php?

Keywords are chess pieces on the chessboard. You can only use them. You cannot change them or add them yourself.

Think about it: I use my pawns as rooks and then place four knights with you. What are you doing?

So PHP won’t do it either!

I wonder if you understand?
Reference: www.gooddou.cn

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/846189.htmlTechArticleOverview of use keywords in PHP, overview of PHPuse keywords. Many open source systems such as the osCommerce framework will have them in their source code Find the use keyword in the osCommerce framework, such as in the index.php file...
Statement
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
php怎么把负数转为正整数php怎么把负数转为正整数Apr 19, 2022 pm 08:59 PM

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

php怎么实现几秒后执行一个函数php怎么实现几秒后执行一个函数Apr 24, 2022 pm 01:12 PM

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php怎么除以100保留两位小数php怎么除以100保留两位小数Apr 22, 2022 pm 06:23 PM

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

php字符串有没有下标php字符串有没有下标Apr 24, 2022 am 11:49 AM

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

php怎么根据年月日判断是一年的第几天php怎么根据年月日判断是一年的第几天Apr 22, 2022 pm 05:02 PM

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

php怎么读取字符串后几个字符php怎么读取字符串后几个字符Apr 22, 2022 pm 08:31 PM

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。

php怎么替换nbsp空格符php怎么替换nbsp空格符Apr 24, 2022 pm 02:55 PM

方法:1、用“str_replace("&nbsp;","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\&nbsp\;||\xc2\xa0)/","其他字符",$str)”语句。

php怎么判断有没有小数点php怎么判断有没有小数点Apr 20, 2022 pm 08:12 PM

php判断有没有小数点的方法:1、使用“strpos(数字字符串,'.')”语法,如果返回小数点在字符串中第一次出现的位置,则有小数点;2、使用“strrpos(数字字符串,'.')”语句,如果返回小数点在字符串中最后一次出现的位置,则有。

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

Hot Tools

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

EditPlus Chinese cracked version

EditPlus Chinese cracked version

Small size, syntax highlighting, does not support code prompt function