如何从PHP二维数组中根据特定id提取项目标题或其他键值?

如何从PHP二维数组中根据特定id提取项目标题或其他键值?

php中处理二维数组时,经常需要根据特定条件提取数据。例如,你可能需要从包含多个项目信息的二维数组中,根据项目的ID提取对应的标题或其他字段的值。

假设你有一个包含项目信息的二维数组:

$items = [     [         "id" => 1,         "view" => 2,         'category_id' => 2,         'title' => "项目一",         "model" => 12,         'desc' => "项目一描述",     ],     [         "id" => 123,         "view" => 2,         'category_id' => 1,         'title' => "项目二",         "model" => 101,         'desc' => "项目二描述",     ] ];

你需要根据ID提取特定项目的信息。可以使用以下函数实现:

function getItemValue(array $items, int $itemId, string $key): mixed {     foreach ($items as $item) {         if ($item['id'] === $itemId) {             return $item[$key] ?? NULL; // 使用空值合并运算符处理不存在的键         }     }     return null; // 如果未找到匹配的ID,则返回null }  // 获取ID为123的项目的标题 $title = getItemValue($items, 123, 'title'); echo $title; // 输出:项目二  // 获取ID为1的项目的描述 $description = getItemValue($items, 1, 'desc'); echo $description; // 输出:项目一描述  // 获取不存在的键值,返回null $model = getItemValue($items, 123, 'nonexistent_key'); var_dump($model); // 输出:NULL

这个函数 getItemValue 接受数组 $items、目标ID $itemId 和目标键 $key 作为参数,并返回对应的值。它使用了空值合并运算符 ?? 来处理可能不存在的键,并返回 null 如果未找到匹配的ID。 这种方法清晰简洁,易于理解和维护。

立即学习PHP免费学习笔记(深入)”;

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享