首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHP 陣列從入門到實戰:鍵值、多維與資料庫串接完整教學

     編輯:PHP 相關知識

陣列是 PHP 最核心的資料結構。本文以零基礎視角,從索引、關聯、多維陣列到實務 foreach 輸出與 unset 刪除,一次釐清觀念。

陣列基本語法與自動索引

<?php
// 1. 空陣列實例化
$arr = [];

// 2. 不指定鍵名 → 自動產生 0,1,2...
$arr = ['a', 'b'];
print_r($arr); // Array ( [0] => a [1] => b )

// 3. 自訂數字鍵名(可不連續)
$arr = [3 => 'a', 5 => 'b'];
print_r($arr); // Array ( [3] => a [5] => b )

// 4. 字串鍵名(關聯陣列)
$arr = ['aa' => 'a', 'bb' => 'b'];
echo $arr['aa']; // 輸出 a
?>

多維陣列與巢狀存取

<?php
// 二維陣列
$arr = [
    0 => ['a', 'b'],
    1 => ['c', 'd']
];
echo $arr[0][1]; // b

// 三維以上同理
$arr = [
    0 => [ ['a','b'], ['c','d'] ],
    1 => [ ['e','f'], ['g','h'] ]
];
?>

實戰:模擬資料庫查詢結果建立陣列

<?php
$users = [];
for ($i = 0; $i <= 10; $i++) {
    // 關鍵:$users[] 會自動推入新索引,避免覆蓋
    $users[] = [
        'name' => '我的名' . $i,
        'age'  => '我的年紀1' . $i
    ];
}

// 輸出 HTML 清單
?>
    <?php foreach ($users as $user): ?>
  • |
  • <?php endforeach; ?>
<?php // 刪除指定索引 unset($users[3]); print_r($users); // 索引 3 消失,其餘保留原鍵名 ?>

新手常見誤區提醒

  • echo $arr 會報錯:陣列只能用 print_r、var_dump 或迴圈輸出。
  • 鍵名型別自動轉換:'0' (字串) 會變成 0 (整數);true 變 1;null 變空字串。
  • 參考傳遞修改原陣列:foreach ($arr as &$v) 時,$v 變更會影響原陣列,用完記得 unset($v)。

進階延伸

掌握基礎後,可進一步學習 array_map、array_filter、array_reduce 等函數式操作,以及 ArrayAccess、Iterator 介面實作物件化陣列。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved