WP DEVELOP

EP010. “什么是 Array”

首页 WordPress 开发课程 主题基础与本地域名 · EP010
约 6 分钟· #EP010#主题基础与本地域名
🔒 登录后可标记已读

延续 EP009 的 PHP 基础课,这一讲讲"array(数组)是什么",同样是在 index.php 里写示范代码,用完就删。核心概念是:array 是把多个值存进同一个变量里的"集合",配合 while 循环重复处理集合里的每一项——这正是后面 WordPress 的 The Loop 用来遍历文章列表的基础写法

涉及文件

  • wp-content/themes/fictional-university-theme/index.php (临时修改,示范用;本讲一开始先删掉上一讲 EP009 留下的示范代码,本讲结束后这里的代码同样不会保留)

代码实现

先复习单一变量(只存一个值):

<?php
$name = 'Brad';
?>
<p>Hi, my name is <?php echo $name; ?>.</p>

array() 存多个值,一个变量装下多个名字:

<?php
$names = array('Brad', 'John', 'Jane', 'Meows a lot');
?>
<p>Hi, my name is <?php echo $names[2]; ?></p>

PHP 数组是 zero-based(从 0 开始数)$names[0] 是 Brad,$names[1] 是 John,$names[2] 是 Jane,$names[3] 是 Meows a lot。

基本的 while 循环练习——输出一个从 1 数到 100 的列表:

<?php
$count = 1;
while ($count < 101) {
    echo "<li>$count</li>";
    $count++;
}
?>

while 循环遍历 $names 数组,对集合里每一项都输出一句话:

<?php
$count = 0;
while ($count < count($names)) {
    echo "<li>Hi, my name is $names[$count]</li>";
    $count++;
}
?>

这里用 PHP 内建的 count($names) 动态取得数组长度,不写死具体数字,以后往数组里加第五个名字也不用回来改循环条件

Hook / Function 速查

名称类型用途
array()PHP 语法建立一个数组(集合),可以在一个变量里存放多个值
while (...) { ... }PHP 语法while 循环:只要括号里的条件是 true,就一直重复执行大括号里的内容
count()PHP 内建 function计算一个数组里有几个元素,常用来当 while 循环的结束条件,避免写死数字

常见坑

  • PHP 数组是 zero-based,第一个元素的索引是 0 不是 1这跟直觉容易反着来
  • while 循环的边界条件差一步就会漏掉:一开始写 $count < 100,结果列表只数到 99(因为 100 不满足"小于 100"),要改成 $count < 101 才会真的数到 100。
  • 不要把数组长度写死成固定数字(比如硬编码 4),以后数组内容变多容易忘记同步更新;用 count($names) 让 PHP 自动算出当前长度。

💡 小技巧

作者特别选用 while 循环而不是更常见的 foreach,是因为 WordPress 内建的 The Loop 本身就是用 while 循环遍历文章数据,先在这里练熟 while 的写法,之后学 The Loop 会更容易懂。

延伸 / 后续讲座会用到

下一讲会正式把这里学到的 array + while 循环概念,对接到 WordPress 真正的文章数据(The Loop),从 Section 4 开始。

Sources

Udemy:

  • Become a WordPress Developer: Unlocking Power With Code — Section 3, EP010