如何从此数组中读取值?

时间:2016-02-26 11:59:11

标签: php arrays

我在php中有这个打印数组

print_r($user['data_gender'])

如果用户性别为Man,则会显示

Array ( [1] => Man ) 1  

如果用户性别为女性,则会显示

Array ( [2] => Woman ) 1

我想检查if语句中的[1]和[2]

if($user['data_gender']==1) { do something; }

if($user['data_gender']==2) { do something; }

我应该怎么做才能从这个数组中获得1或2

5 个答案:

答案 0 :(得分:2)

尝试这样来获取数组的键

if(key($user['data_gender'] == 1)){ 
   //do somthing 
}

答案 1 :(得分:0)

您需要使用$user['data_gender'][1]$user['data_gender'][2]来获取这两个值..!

答案 2 :(得分:0)

尝试:

if($user["data_gender"][1]=="Man") { /* do something */ }
if($user["data_gender"][2]=="Woman") { /* do something */ }

答案 3 :(得分:0)

修改:

以@ meet的答案为基础。 你应该避免魔术字符串/数字我的意思是你应该避免做类似

之类的事情

if (key($user['data_gender'] == 1) { ... }

取而代之的是:

define('MALE', 1);
define('FEMALE', 2);

$gender = key($user['data_gender']);

if ($gender === MALE) { ... }
if ($gender === FEMALE) { ... }

这样你的代码就会干净,更具可读性。任何查看代码的人都不必猜测1是男性,2是女性。

答案 4 :(得分:0)

让性别成为像这样的数组

gender = {
          [0] => menn,
          [1] => women
        }   

if($gender[0]== 'men') 
{ 
   $men = array('1'=>'men');
   print_r($men);

}

if($gender[1] == 'women') 
{ 
  $women = array('2'=>'women');
  print_r($women);

}