Heim  >  Artikel  >  Backend-Entwicklung  >  php 实例化对象疑惑?

php 实例化对象疑惑?

WBOY
WBOYOriginal
2016-06-06 20:36:04998Durchsuche

<code>Example #3 导入和动态名称

<?php use My\Full\Classname as Another, My\Full\NSname;

$obj = new Another; // 实例化一个 My\Full\Classname 对象
$a = 'Another';
$obj = new $a;      // 实际化一个 Another 对象
?>


http://php.net/manual/zh/language.namespaces.importing.php
上述代码在php手册看到的
为什么new 操作符在创建对象的时候没有加()小括号?
</code>

回复内容:

<code>Example #3 导入和动态名称

<?php use My\Full\Classname as Another, My\Full\NSname;

$obj = new Another; // 实例化一个 My\Full\Classname 对象
$a = 'Another';
$obj = new $a;      // 实际化一个 Another 对象
?>


http://php.net/manual/zh/language.namespaces.importing.php
上述代码在php手册看到的
为什么new 操作符在创建对象的时候没有加()小括号?
</code>

如果构造函数没有参数,加()或者不加()都可以。你可以试试。

括号主要是为了传入参数。
如果构造函数有参数就必须要括号,如果没有参数,加不加括号效果都相同。

这不是很好吗,当你需要根据不同上下文环境就可以不同的对象

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn