实在转不弯了
回复讨论(解决方案)   in_array 的第二个参数是数组,你用字符串当然不行  
要   in_array($b, explode(',', $a)) 
   我知道是这样 但是这样就出现了 $a='1,20,18,19'; $b='20'; 那么他也可以在1 18 19浏览了  
如何实现他只能在20这个城市浏览 其他的不能浏览呢
比如  
 url.php?city=20   (数据库存 1,20,18,19)  
用户a所在城市为20
如果使用了  in_array
url.php?city=1   url.php?city=18  url.php?city=19  都是可以访问的   
如何实现 他只能访问  url.php?city=20 
   你问的应该是权限怎么设置的问题吧,这个根$a没有任何关系;$a只是存储了所有城市的id,但$b里才是用户的城市id。  
你应该在浏览城市的地方,去判断$b,然后允许$b的城市禁止其他城市;这个根$a没有关系。 
   和$a 的关系是紧密的  因为$a 存储了城市id 需要用$a中的某一个值和$b 做对比  现在就卡在怎么对比上了 
   也就是   
if($a怎么对比$b){  
 echo yes;  
}else{  
 echo no;  
}
用in_array肯定是不行的  
   你怎么回事?  
if(in_array($b, explode(',', $a))) {  
  //这里是允许访问的内容  
} 
   版主这样是不行的  
也行我表达的不够清晰  
我已经拆分34个字段用switch进行判断了
仔细琢磨过了 用逗号分隔 进行精确判断好像做不到
   
 
   