根据返回的省信息,显示属于什么地区(华南、华中...等)目前已经获得省信息,请问如何显示地区?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>判断地区</title>
<script type="text/javascript" src="http://fw.qq.com/ipaddress" charset="gbk"></script>
</head><body>
<script language="javascript">
  <!--
document.write(IPData[2]+"\n"); //显示省
  //-->
</script><?php
if( $diqu = "广东" || $diqu = "广西"  )
{
        echo "华南"; 
}
?></body>
</html>

解决方案 »

  1.   

    $ar = array('华南'=>array('广东','广西'));
    $diqu = '广东';
    function area($diqu,$ar) {
       foreach($ar as $k => $v) {
          foreach($v as $prov) {
             if ($prov == $diqu) {
                return $k;
                break 2;
             }
          }
          return '未知地区';
       }
    }
    echo area($diqu,$ar);
      

  2.   

    break 2; //这一句多余,删掉
      

  3.   

    谢谢,如果要加上其它几个区的判断,例如华中等等。这样代码很大啊,请教优化的写法:下面代码写到这样不会写了(其中 $diqu = '广东'; 是否没什么作用?):$ar = array('华南'=>array('广东','广西'));
    $ar = array('华南'=>array('河南','湖北'));
    function area($ar) {
       foreach($ar as $k => $v) {
          foreach($v as $prov) {
             if ($prov == '广东') {
                return $k;
             }
          }
          return '未知地区';
       }
    }
    echo area($ar);
      

  4.   

    //地区数据全都写到$ar数组中,函数代码不需要修改:
    $ar = array('华南'=>array('广东','广西','福建','云南'), '华东'=>array('上海','浙江','江苏'));