Skip to content

amp; parameter handling is a fragile workaround #214

Description

@chedong

描述

phpMan.php 中 6 处检查 $_GET["amp;parameter"]$_GET["amp;mode"] 等,用于解决 & 被双编码成 & 时参数被截断的问题。这是一种脆弱的补丁。

代码位置

https://github.com/chedong/phpman/blob/master/phpMan.php#L68-L71

if (requestValue($_GET, "format") === "json" || requestValue($_GET, "amp;format") === "json") {

影响

  • amp; 前缀不是一个可靠的区分方式
  • 代码膨胀:6 处重复的 requestValue 调用

建议

  1. 在 Web 服务器层(Nginx)处理 URL 重写
  2. 或封装一个统一函数,在取不到值时尝试解码 & 后的版本

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions