$tem = "{'Name':'Table','Rows':[{'hotelcd':'0100C2','hotelnm':'北京红领巾桥店','tel':'010-65928986','fax':'010-65926916'"; 
我想要'tel':'010-65928986'怎么弄呢。。谢谢了

解决方案 »

  1.   

    preg_match("/'tel':'(.*?)'/",$tem,$s);
    print_r($s);
      

  2.   

    你这是半截json数据?没给完整吧?给完整的话用json来处理更方便
      

  3.   

    json应该是双引号,不是json把
      

  4.   

     用json_decode解码之后处理。比较好
     
      

  5.   

    看着也不是很json啊。strstr截取。
      

  6.   

    貌似是json。
    $str=json_decode($jsonstring);
    echo $str->tel;
      

  7.   

    $tem ="{'Name':'Table','Rows':[{'hotelcd':'0100C2','hotelnm':'北京红领巾桥店','tel':'010-65928986','fax':'010-65926916'},{'hotelcd':'010017','hotelnm':'北京东直门店','tel':'010-51203288','fax':'010-51203299'}]}";
    这个是完整的怎么取“tel”的值呀,谢谢了
      

  8.   

    正则方法见 #1 只需将函数改为 preg_match_all();即可。
    第二种方法:
    $a= str_replace("'",'"',$tem);
    print_r(json_decode($a,true)); 
      

  9.   

    $tem ="{'Name':'Table','Rows':[{'hotelcd':'0100C2','hotelnm':'北京红领巾桥店','tel':'010-65928986','fax':'010-65926916'},{'hotelcd':'010017','hotelnm':'北京东直门店','tel':'010-51203288','fax':'010-51203299'}]}";
    $tem = str_replace("'", '"', $tem);
    $ar = json_decode($tem, true);
    //var_dump($ar);
    $result = array();
    foreach($ar['Rows'] as $k => $v) $result[] = $v['tel'];
    print_r($result);Array ( [0] => 010-65928986 [1] => 010-51203288 )
      

  10.   

    $tem = strtr($tem, "'", '"');
    echo json_decode($tem)->Rows[0]->tel;