审查生成的订单列表渲染器

来自 PHP 语言基础
PHP 8.3.33 高级 6分钟 找出 4处问题

在这个生成的 HTML 渲染函数接收客户订单前,对它进行审查。

只把已付款订单渲染成 HTML 列表,保留合法 ID '0',不修改输入或全局状态,并按 HTML 文本规则编码客户提供的 ID。

php
<?php
function renderPaidOrders(array $orders): string
{
    global $published;

    $html = '<ul>';
    foreach ($orders as &$order) {
        if (!$order['id']) {
            continue;
        }

        if ($order['state'] = 'paid') {
            $published[] = $order['id'];
            $html .= '<li>' . $order['id'] . '</li>';
        }
    }

    return $html . '</ul>';
}

$published = [];
echo renderPaidOrders($orders);

生成代码仅作示例,不代表任何特定模型

在试验场中打开
报告错误