首頁  >  文章  >  後端開發  >  PHP循環學習六:物件如何進行遍歷

PHP循環學習六:物件如何進行遍歷

青灯夜游
青灯夜游原創
2021-08-06 12:08:584908瀏覽

在之前的文章《PHP數組學習之怎麼遍歷數組元素? 4種方法淺析》中,我們介紹了PHP遍歷陣列的4種方法。下面我們繼續來了解遍歷,跟大家介紹一下PHP物件是如何遍歷的,有需要的可以參考參考。

首先我們來了解下一種什麼是物件遍歷:它主要是指遍歷物件中的,對外部可見的屬性(即存取限制符public宣告的屬性)。

那麼物件怎麼進行遍歷呢?常用的物件遍歷方法是使用foreach語句。沒錯,就是使用foreach語句(是不是很強大,數組和物件都可以遍歷)。

foreach語句一開始的確是為遍歷陣列而設計出來的,但從PHP5開始,它新增功能--也可以遍歷物件了。 foreach語句遍歷陣列和物件的語法格式一樣,都有兩種格式:

//语法格式1
foreach ($object as $value){
    语句块;
}

//语法格式2
foreach ($object as $key => $value){
    语句块;
}

這兩種格式其實很類似,差別只在於:語法格式1中遍歷 $objec物件時,在每次迴圈中將目前物件的「成員屬性值」賦給 $value;而語法格式2中,遍歷$ objec物件時,在每次迴圈中會將目前物件的「成員屬性值」賦給 $value,「成員屬性名稱」賦給 $key

下面我們透過程式碼範例來看看foreach語句是如何遍歷物件的。

我們定義一個類,將類別實例化成物件:

<?php
header("Content-type:text/html;charset=utf-8");
class Demo  //定义一个类
{
  public $name;   //定义变量--成员属性
  public $age;    //定义变量--成员属性
  public $salary;  //定义变量--成员属性
  public function __construct($name,$age,$salary)  //定义函数--成员方法
  {
    $this->name = $name;
    $this->age = $age;
    $this->salary = $salary;
   }
}

//实例化对象
$obj = new Demo(&#39;李华&#39;, 25, 4200);

?>

使用foreach語句遍歷物件

foreach ($obj as $value)
{
  echo $value.&#39;<br>&#39;;
}

我們來看看輸出:

PHP循環學習六:物件如何進行遍歷

是不是很簡單。在實例化物件後,直接使用foreach ($obj as $value)語句就可以獲得$obj物件中的所有可見屬性了。

上面只取得了“成員屬性值”,有時我們需要“成員屬性名”和“成員屬性值”值一起取得,就可以使用foreach語句的第二種格式:

foreach ($obj as $key=>$value)
{
  echo $key.&#39;=>&#39;.$value.&#39;<br>&#39;;
}

我們來看看輸出:

PHP循環學習六:物件如何進行遍歷

好了就說到這裡了,有其他想知道的,可以點擊這個哦。 → →php影片教學

推薦:PHP面試題大匯總(收藏)

以上是PHP循環學習六:物件如何進行遍歷的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn