首页 > 如何通过优雅的代码逻辑方式,使得通过get method访问的地址在传递的参数不正确的时候避免出现额外的错误?

如何通过优雅的代码逻辑方式,使得通过get method访问的地址在传递的参数不正确的时候避免出现额外的错误?

如题,比如我要访问的一个链接是 http://www.XXX.com?type=class,在产品角度上,只需要class,group两个类型,用户的正常操作也不会触发其他类型,但是当用户手动输入URL,比如http://www.XXX.com?type=class 的时候,在后台如何去优雅的处理这些不存在的type才会符合用户体验并且不破坏代码优雅性?


这应该是个筛选条件吧, 先判断筛选条件是否合法,不合法跳转到默认页.


<?php

const AllowTypes = array('class', 'group');

$type = @$_GET['type'];

if(in_array($type, AllowTypes) == false){
    exit('.......');
}


///下面写你正常的代码即可..
///将来要增加/删除类型, 只需要在 AllowTypes 中增加/删除内容即可
///再将来也可以将上面的 const 做为配置项, 保存为一个公用文件
///然后将 in_arra y这样的检测改为一个函数调用 
///比如 if(AllowType(AllowTypes, $type))
///$type 为要从HTTP请求中获取的内容, 然后 AllowTypes 为该内容在哪个项目里进行检测

仅供参考, 期待其他更高明的回复.

【热门文章】
【热门文章】