當前位置: 首頁> 最新文章列表> 如何通過print 函數輸出PHP 數組的鍵值對?簡單實用教程

如何通過print 函數輸出PHP 數組的鍵值對?簡單實用教程

gitbox 2025-10-01

1. 使用print函數輸出數組的鍵值對

首先,了解一下print函數的基本用法。 print函數在PHP 中用於輸出一個字符串或變量的值。如果你想輸出數組的鍵值對,直接使用print輸出數組變量會得到類似這樣的結果:

 <span><span><span class="hljs-variable">$myArray</span></span><span> = </span><span><span class="hljs-keyword">array</span></span><span>(
    </span><span><span class="hljs-string">"name"</span></span><span> =&gt; </span><span><span class="hljs-string">"John"</span></span><span>,
    </span><span><span class="hljs-string">"age"</span></span><span> =&gt; </span><span><span class="hljs-number">30</span></span><span>,
    </span><span><span class="hljs-string">"city"</span></span><span> =&gt; </span><span><span class="hljs-string">"New York"</span></span><span>
);

</span><span><span class="hljs-keyword">print</span></span><span>(</span><span><span class="hljs-variable">$myArray</span></span><span>);
</span></span>

這段代碼並不會輸出我們想要的數組內容,而是會返回類似如下的字符串:

 <span><span><span class="hljs-title class_">Array</span></span><span>
</span></span>

這時我們需要通過其他方法來提取數組中的每個鍵值對並以適合的格式輸出。


2. 使用print_r輸出數組

對於數組的輸出,PHP 提供了print_r函數,它能夠以易於閱讀的格式打印數組結構和內容:

 <span><span><span class="hljs-variable">$myArray</span></span><span> = </span><span><span class="hljs-keyword">array</span></span><span>(
    </span><span><span class="hljs-string">"name"</span></span><span> =&gt; </span><span><span class="hljs-string">"John"</span></span><span>,
    </span><span><span class="hljs-string">"age"</span></span><span> =&gt; </span><span><span class="hljs-number">30</span></span><span>,
    </span><span><span class="hljs-string">"city"</span></span><span> =&gt; </span><span><span class="hljs-string">"New York"</span></span><span>
);

</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$myArray</span></span><span>);
</span></span>

輸出結果會是:

 <span><span>Array
(
    [</span><span><span class="hljs-meta">name</span></span><span>] =&gt; John
    [</span><span><span class="hljs-meta">age</span></span><span>] =&gt; </span><span><span class="hljs-number">30</span></span><span>
    [</span><span><span class="hljs-meta">city</span></span><span>] =&gt; New York
)
</span></span>

雖然print_r已經非常清晰地展示了數組的結構,但如果我們只想單獨打印每個鍵值對,可以採用更為手動的方法。


3. 遍歷數組並通過print輸出鍵值對

如果我們想要按特定格式輸出數組中的每個鍵值對,可以使用foreach循環來遍歷數組,並通過print輸出每一對鍵值。例如:

 <span><span><span class="hljs-variable">$myArray</span></span><span> = </span><span><span class="hljs-keyword">array</span></span><span>(
    </span><span><span class="hljs-string">"name"</span></span><span> =&gt; </span><span><span class="hljs-string">"John"</span></span><span>,
    </span><span><span class="hljs-string">"age"</span></span><span> =&gt; </span><span><span class="hljs-number">30</span></span><span>,
    </span><span><span class="hljs-string">"city"</span></span><span> =&gt; </span><span><span class="hljs-string">"New York"</span></span><span>
);

</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$myArray</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$key</span></span><span> =&gt; </span><span><span class="hljs-variable">$value</span></span><span>) {
    </span><span><span class="hljs-keyword">print</span></span><span>(</span><span><span class="hljs-string">"鍵: "</span></span><span> . </span><span><span class="hljs-variable">$key</span></span><span> . </span><span><span class="hljs-string">" | 值: "</span></span><span> . </span><span><span class="hljs-variable">$value</span></span><span> . </span><span><span class="hljs-string">"\n"</span></span><span>);
}
</span></span>

輸出結果為:

 <span><span><span class="hljs-section">鍵: name | 值: John</span></span><span>
</span><span><span class="hljs-section">鍵: age | 值: 30</span></span><span>
</span><span><span class="hljs-section">鍵: city | 值: New York</span></span><span>
</span></span>

通過這種方式,我們可以按行輸出數組的每個鍵值對,同時控制輸出的格式。


4. 格式化輸出數組的鍵值對

為了讓輸出更加美觀和易於閱讀,可以通過sprintf函數格式化每一行輸出。例如:

 <span><span><span class="hljs-variable">$myArray</span></span><span> = </span><span><span class="hljs-keyword">array</span></span><span>(
    </span><span><span class="hljs-string">"name"</span></span><span> =&gt; </span><span><span class="hljs-string">"John"</span></span><span>,
    </span><span><span class="hljs-string">"age"</span></span><span> =&gt; </span><span><span class="hljs-number">30</span></span><span>,
    </span><span><span class="hljs-string">"city"</span></span><span> =&gt; </span><span><span class="hljs-string">"New York"</span></span><span>
);

</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$myArray</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$key</span></span><span> =&gt; </span><span><span class="hljs-variable">$value</span></span><span>) {
    </span><span><span class="hljs-keyword">print</span></span><span>(</span><span><span class="hljs-title function_ invoke__">sprintf</span></span><span>(</span><span><span class="hljs-string">"鍵: %-10s | 值: %-20s\n"</span></span><span>, </span><span><span class="hljs-variable">$key</span></span><span>, </span><span><span class="hljs-variable">$value</span></span><span>));
}
</span></span>

此時輸出會有更整齊的排版:

 <span><span><span class="hljs-section">鍵: name       | 值: John               </span></span><span>
</span><span><span class="hljs-section">鍵: age        | 值: 30                 </span></span><span>
</span><span><span class="hljs-section">鍵: city       | 值: New York           </span></span><span>
</span></span>

通過調整%-10s%-20s的數字,可以控制鍵值對的列寬,從而獲得理想的輸出格式。


5. 總結

本文介紹瞭如何使用PHP 的print函數輸出數組的鍵值對。我們可以通過foreach循環遍歷數組,並結合print函數逐個輸出每個鍵值對。雖然print_r能夠直接輸出整個數組,但有時我們需要對每個元素的輸出進行定制化,因此使用foreach循環和print是一種非常實用的方法。

通過適當的格式化,我們還可以讓輸出更加清晰、整潔,便於調試和閱讀。在實際開發中,根據需求靈活運用這些方法,可以大大提升代碼的可讀性和調試效率。