php new是一种对象实例化的方式,它可以直接创建对象而无需使用类名构造函数。在实际开发中,我们通常使用new来初始化对象,因此我们需要了解new关键字的使用方法及其相关注意事项。
在使用new创建对象时,我们需要先定义一个类。例如:
class Person { public $name; public $age; function __construct($name, $age) { $this->name = $name; $this->age = $age; } function greet() { echo "Hello, my name is " . $this->name . " and I am " . $this->age . " years old."; } }
上述代码定义了一个Person类,该类包含两个公共属性$name和$age,以及一个构造函数__construct和一个greet方法。使用new关键字创建一个Person对象,只需在类名后面添加括号并传递参数即可:
$p1 = new Person("Lily", 18); $p1->greet();
上述代码创建了一个名为$p1的Person对象,并传递$name和$age两个参数。然后,调用$p1的greet方法输出一段问候语,结果为:
Hello, my name is Lily and I am 18 years old.
需要注意的是,在使用new创建对象时,必须要使用类名。下面的代码会产生语法错误:
$person = new ($classname)();
此外,在一些特定的情况下,新对象的实例化可能与其他PHP扩展或函数库的实现方式有关。例如,在使用SimpleXML扩展时,我们可以使用new来创建一个SimpleXMLElement对象:
$xml = new SimpleXMLElement(''); echo $xml->asXML(); value value
在上面的代码中,new关键字创建了一个SimpleXMLElement对象,并将XML字符串传递给它。
总之,new是一个强大的关键字,可以用来创建任何类的对象。只需通过类名后的括号并传递参数即可轻松实例化对象。但需要注意的是,使用new时必须要使用类名,否则会产生语法错误。