php 怎麼將變數轉換成陣列

PHPz
發布: 2023-04-17 14:49:57
原創
745 人瀏覽過

在 PHP 中,可以將變數轉換成數組,讓資料處理更方便、更有效率。下面我們將詳細介紹如何將不同類型的變數轉換成陣列。

一、將字串轉換成陣列

1.1 使用explode 函數

explode 函數可以將字串依照指定的分隔符號拆分成數組,範例程式碼如下:

$str = "apple,banana,orange";
$arr = explode(",", $str);
print_r($arr);
登入後複製

輸出結果:

Array
(
    [0] => apple
    [1] => banana
    [2] => orange
)
登入後複製

1.2 使用str_split 函數

str_split 函數可以將字串拆分成單一字元的數組,範例程式碼如下:

$str = "Hello, PHP!";
$arr = str_split($str);
print_r($arr);
登入後複製

輸出結果:

Array
(
    [0] => H
    [1] => e
    [2] => l
    [3] => l
    [4] => o
    [5] => ,
    [6] =>  
    [7] => P
    [8] => H
    [9] => P
    [10] => !
)
登入後複製

二、將數字、布林值或null 轉換成陣列

2.1 使用轉換符號

可以使用轉換符號將數字、布林值或null 轉換成數組,範例程式碼如下:

$num = 123;
$arr = (array)$num;
print_r($arr);

$bool = true;
$arr = (array)$bool;
print_r($arr);

$null = null;
$arr = (array)$null;
print_r($arr);
登入後複製

輸出結果:

Array
(
    [0] => 123
)
Array
(
    [0] => 1
)
Array
(
)
登入後複製

三、將物件轉換成數組

3.1 使用get_object_vars 函數

get_object_vars函數可以將物件轉換成關聯數組,其中鍵名為物件屬性名,範例程式碼如下:

class Person {
  public $name;
  public $age;
  public function __construct($name, $age) {
    $this->name = $name;
    $this->age = $age;
  }
}

$person = new Person("Tom", 18);
$arr = get_object_vars($person);
print_r($arr);
登入後複製

#輸出結果:

Array
(
    [name] => Tom
    [age] => 18
)
登入後複製

3.2 巢狀使用轉換

如果物件屬性值也是對象,可以使用遞迴呼叫將其轉換成數組,範例程式碼如下:

class Person {
  public $name;
  public $age;
  public $address;
  public function __construct($name, $age, $address) {
    $this->name = $name;
    $this->age = $age;
    $this->address = $address;
  }
}

class Address {
  public $country;
  public $city;
  public function __construct($country, $city) {
    $this->country = $country;
    $this->city = $city;
  }
}

$address = new Address("China", "Beijing");
$person = new Person("Tom", 18, $address);

$arr = (array)$person;
if (is_object($person->address)) {
  $arr["address"] = (array)$person->address;
}

print_r($arr);
登入後複製

#輸出結果:

Array
(
    [name] => Tom
    [age] => 18
    [address] => Array
        (
            [country] => China
            [city] => Beijing
        )
)
登入後複製

以上就是將變數轉換成數組的方法,希望能對你有所幫助!

以上是php 怎麼將變數轉換成陣列的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板