2011-04-28 88 views
0

的结构,我有以下结构:遍历PHP

Array 
(
    [signupbasic] => Array 
     (
      [0] => Array 
       (
        [name] => Enter your first name or username 
        [email] => Enter your email address 
        [password] => Enter your password 
        [phone] => Enter your mobile number 
        [message1] => A text will be send to your phone - reply to validate 
        [gender] => Array 
         (
          [label] => Gender 
          [values] => Array 
           (
            [0] => Array 
             (
              [Female] => 1 
             ) 

            [1] => Array 
             (
              [Male] => 2 
             ) 

           ) 

         ) 

        [birthday] => Array 
         (
          [label] => Date of birth 
          [values] => date 
         ) 

        [message2] => By clicking on "Continue" below you agree to Terms of Service and Privacy Policy 
       ) 

     ) 

) 

正如你可以看到性别&生日是不同大小的阵列。由于性别和生日的大小不同,我不知道如何穿过上述结构。

任何机构可以帮助我实现这一目标吗?

+0

你用什么代码来解码'JSON'?因为自从5.2版本以来PHP有一个名为'json_decode'的内建函数。看看:http://php.net/manual/en/function.json-decode.php – Kevin 2011-04-28 06:52:01

+0

嗨凯文。我有使用json_decode.My问题是“性别”和“生日”是不同维度的数组,所以我是试图找出如何解析它 – user469999 2011-04-28 06:55:59

+0

我不太清楚我明白你在说什么。什么**是你的问题?为什么你不能遍历对象? – Kevin 2011-04-28 06:58:03

回答

0

对于PHP了解JSON,它需要专门的格式

{ 
    "property1": "value1", 
    "property2": "value2", 
    "property3": "value3", 
    "property4": "value4" 
} 

看到php.net json_decode()功能

1

更好explenation你为什么不只是单独访问这些价值观?就像你有可能完成name,emailpassword

$o是JSON,然后做沿着此线的东西:

$data = &$o['signupbasic'][0]; 

$genderObj = $data['gender']; 
$birthdayObj = $data['birthday']; 

我不太清楚你要完成,你可以张贴一些PHP代码是什么?

1

我不知道我是否明白你的意思,但会是这样的吗?

foreach($json['signupbasic'][0]['gender']['values'] as $genderValue) { 
    foreach($genderValue as $genderKey => $genderSubVal) { 
    echo $genderKey." ".$genderSubVal."\n\r"; 
    } 
} 

foreach($json['signupbasic'][0]['birthday'] as $bdKey => $bdValue) { 
    echo $bdKey." ".$bdValue."\n\r"; 
} 

假设$ json是json_decode调用的返回值。

+0

中传播上述json。谢谢大家的帮助。我会尝试一下 – user469999 2011-04-28 08:41:00