所以我正在使用一个允许开发人员应用过滤器的API。
目前有/ users?filters = user_id:10,20,30,40等终点,但它也接受更多的在线过滤器。例如
/用户PARAMS = USER_ID:10,20,30,名称:约翰,日期:20160601
我想知道的是确定一些事情的最好方法。
如果设置了user_id过滤器。只从过滤器中获取ID。
答案 0 :(得分:1)
<?php
//Make sure the filter is set
if(!empty($_GET['filters'])){
$filters = $_GET['filters'];
if(strpos($filters,'user_id') >= 0){
preg_match('/user_id:[0-9 ,]+/',$filters,$matches);
if(count($matches[0])){
//Parse IDs
$ids = substr($matches[0],(strpos($matches[0],":")+1),(strlen($matches[0])-strpos($matches[0],":")));
$ids = explode(',',$ids);
//In case we take in an extra comma
if($ids[count($ids)-1] == ""){
unset($ids[count($ids)-1]);
}
//Do something with IDs here
var_dump($ids);
}
}else{
echo 'not set';
}
}else{
echo 'No filters';
}
答案 1 :(得分:0)