在PHP 的日常開發中,我們經常會遇到需要快速生成一個預定義數組的情況,例如初始化一個指定長度、默認值一致的數組。這時候, array_fill()函數就是你的好幫手!本文將用最短的時間,讓你徹底搞懂這個高效實用的函數。
array_fill()是PHP 內置的一個數組處理函數,它可以用來創建一個指定大小、並且值都相同的數組。它的語法如下:
array_fill(int $start_index, int $count, mixed $value): array
$start_index :新數組中第一個元素的索引,可以是整數(包括負數)。
$count :要填充的元素個數。
$value :要填充的值。
$arr = array_fill(0, 10, 0);
print_r($arr);
輸出:
Array
(
[0] => 0
[1] => 0
[2] => 0
[3] => 0
[4] => 0
[5] => 0
[6] => 0
[7] => 0
[8] => 0
[9] => 0
)
這個例子會生成一個從索引0 開始、長度為10、值全是0 的數組。
$default_settings = array_fill(0, 5, 'off');
你可以很方便地用來表示5個開關初始都是關閉狀態。
假設一個多選表單中有10個選項,你想在用戶未提交前默認全部為false:
$form_defaults = array_fill(1, 10, false);
$placeholders = array_fill(0, 3, 'loading...');
這類數組可以用於前端模板輸出,數據加載時顯示默認提示。
如果$count小於等於0,返回的是一個空數組。
如果$start_index為負數,那麼數組的鍵也會是負數。
該函數不會保留鍵名結構,僅按順序生成鍵。
// 負索引示例
$arr = array_fill(-3, 3, 'PHP');
print_r($arr);
輸出:
Array
(
[-3] => PHP
[-2] => PHP
[-1] => PHP
)
你可能會在某些動態場景下生成URL 參數的默認值。例如你要生成5 個分頁鏈接的默認頁碼:
$page_links = array_fill(1, 5, 'https://m66.net/page/1');
foreach ($page_links as $key => $url) {
$page_links[$key] = "https://m66.net/page/{$key}";
}
print_r($page_links);
輸出:
Array
(
[1] => https://m66.net/page/1
[2] => https://m66.net/page/2
[3] => https://m66.net/page/3
[4] => https://m66.net/page/4
[5] => https://m66.net/page/5
)
是不是非常實用?
array_fill()是一個簡單但強大的函數,用於快速初始化數組,不管是開發配置、表單、數據處理還是分頁邏輯,它都能大大提高你的開發效率。現在,你只需要花上5分鐘,就已經完全掌握了它!
下次當你需要創建一堆默認值時,別再用循環手動填充數組了,用array_fill() ,讓你的代碼更清晰、更高效!