尝试定位多维数组

时间:2016-12-02 10:08:55

标签: arrays multidimensional-array conditional

我试图根据用户成员资格的状态创建一些条件逻辑。

下面显示了我的状态'

的数组
$user_id = get_current_user_id();
$args = array( 
    'status' => array( 'wcm-active', 'wcm-delayed', 'wcm-complimentary', 'wcm-pending', 'wcm-paused', 'wcm-expired', 'wcm-cancelled' ),
);  
$active_memberships = wc_memberships_get_user_memberships( $user_id, $args );

然后我想写一个条件语句然后定位特定的状态。例如,如果我想仅针对' wcm-delayed'。以下是我所拥有的但似乎无法发挥作用:

if ($active_memberships = wc_memberships_get_user_memberships( $user_id, $args[0][1] )) {
   show content
}

1 个答案:

答案 0 :(得分:0)

通过简化数组找到了一种方法,因此它一次只包含一个状态。不理想,但允许我针对特定的用户状态,就像我试图做的那样。

见下面的代码:

$user_id = get_current_user_id(); 
$args = array( 'status' => 'wcm-active' );  
$active_memberships = wc_memberships_get_user_memberships( $user_id, $args ); 

if ($active_memberships == wc_memberships_get_user_memberships( $user_id, $args['status']['wcm-active'] )) { 
echo 'This content only shows for active statuses'; 
}