Menu
CoddyTech

使用 in_array 查找值

本课属于 Coddy PHP 学习旅程的“逻辑与流程”单元。第 17 课,共 68 课。

当你需要检查数组中是否存在某个特定值时,PHP 的 in_array() 函数正好可以解决这个问题。这个函数会搜索数组,并返回布尔值:如果找到该值,则返回 true;否则返回 false。

下面是基本语法:

<?php
$existingUsers = ["alice", "bob", "charlie"];
$newUsername = "bob";

if (in_array($newUsername, $existingUsers)) {
    echo "Username already taken!";
} else {
    echo "Username available!";
}
// 输出:Username already taken!
?>

in_array() 函数有两个主要参数:你要查找的值和要搜索的数组。由于它返回布尔值,因此非常适合与 if 条件语句和 while 循环搭配使用。

这个函数在验证任务中特别有用,例如检查用户输入是否与几个允许的选项之一匹配、确认某个商品是否已存在于购物车中,或确保不会将重复条目添加到列表中。

challenge icon

挑战

简单

你会收到两个输入:一个 JSON 格式的可用颜色数组,以及一个要搜索的颜色名称。读取这两个输入,将 JSON 字符串转换为数组,使用 in_array() 检查数组中是否存在该颜色,如果存在则打印 "Color available",否则打印 "Color not available"。

输入格式:两行,第一行包含一个 JSON 数组(例如:["red","blue","green","yellow"]),第二行包含要搜索的颜色名称。

预期输出:根据数组中是否存在该颜色,输出 "Color available" 或 "Color not available"。

亲手试试

<?php
// 读取颜色的 JSON 数组
$jsonInput = fgets(STDIN);
$colors = (array)json_decode($jsonInput, true);

// 读取要查找的颜色
$searchColor = trim(fgets(STDIN));

// TODO:在下方编写代码,检查该颜色是否在数组中

// 输出结果
echo $result;
?>
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

逻辑与流程中的所有课

自己练习: PHP 在线编译器