兩段代碼的區(qū)別
<?php
//定義一個(gè)類
class Car {
? ? //定義屬性
? ? public $name = '汽車';
? ? //定義方法
? ? public function getName() {
? ? ? ? //方法內(nèi)部可以使用$this偽變量調(diào)用對(duì)象的屬性或者方法
? ? ? ? echo $this->name;
? ? }
}
$car = new Car();
//也可以采用變量來創(chuàng)建
$car->name='Car';
$car->getName();
?>
與
//定義一個(gè)類
class Car {
? ?//定義屬性
? ?public $name = '汽車';
? ?//定義方法
? ?public function getName() {
? ? ? ?//方法內(nèi)部可以使用$this偽變量調(diào)用對(duì)象的屬性或者方法
? ? ? ?return $this->name;
? ?}
}
$car = new Car();
//也可以采用變量來創(chuàng)建
$className = 'Car';
$car = new $className();
這兩段代碼有什么區(qū)別
2018-08-13
第一段代碼會(huì)在屏幕echo一個(gè)結(jié)果,是執(zhí)行g(shù)etName()方法的時(shí)候輸出的,但是$car不會(huì)獲得其值。
第二段代碼不會(huì)輸出值,要輸出就要echo $car,因?yàn)間etName()方法將值返還給了$car,而沒有直接輸出。
2017-06-30
2017-05-27
一個(gè)是方法內(nèi)的返回輸出,前一個(gè)用echo,后一個(gè)return.
另外一個(gè)就是兩者類的聲明方式不同