修改新代码以支持 PHP5.3

Modifying new code to support PHP5.3

我正在使用 Roots.io wordpress 入门主题。它编码为 PHP 5.5,但我发布网站的服务器是 运行 PHP 5.3

我需要更改此代码以供服务器上的 PHP 支持,但不知道如何做。

function asset_path($filename) {
    $dist_path = get_template_directory_uri() . DIST_DIR;
    $directory = dirname($filename) . '/';
    $file = basename($filename);
    static $manifest;

if (empty($manifest)) {
    $manifest_path = get_template_directory() . DIST_DIR . 'assets.json';
    $manifest = new JsonManifest($manifest_path);
}

if (WP_ENV !== 'development' && array_key_exists($file, $manifest->get())) {
    return $dist_path . $directory . $manifest->get()[$file];
} else {
    return $dist_path . $directory . $file;
}
}

问题出在这一行:

return $dist_path . $directory . $manifest->get()[$file];

[$file] 令人困惑 PHP 我想但不知道如何修改它。有小费吗?如果需要更多代码,请告诉我。

您需要将 return 拆分为从方法调用中请求索引,我认为在 5.4 中开始得到支持。

尝试拆分。

$val = $manifest->get();
return $dist_path . $directory . $val[$file];

作为参考,这称为数组解除引用。您可以找到有关它的更多信息 here