检查多维数组是否具有特定键的值

I want to run through this array

$to_check = array(
    'message' => string(4) "test"
    'promo_code_id' => string(0) ""
    'shipping_fee' => int(0)
    'cart'=> array(
      'value_euro' => string(6) "100.00"
      'shipping_desc' => string(14) "Email Delivery"
      'shipping_fee' => string(4) "0.00"
      'discount' => array(
          'valid' => string(3) "yes"
          'amount' => string(4) "0.00" 
       )
      )
    }
}

to see if these keys have values

    $check['message']
    $check['shipping_fee']
    $check['cart'][value_euro']
    $check['cart'][shipping_desc']
    $check['cart'][discount']['valid']

only.

Is there a nice way to loop through the $to_check array without creating all individual if statements?

Your question is unclear but I think this will do what you're asking:

$to_check = array(
    'message' => 'yes',
    'shipping_fee',
    'cart', 
    'value_euro', 
    'shipping',
    'discount'
    );



foreach($to_check as $check){
    if(!is_array($check) && array_key_exists($check, $to_check)){
    //the key has a value, do something 
    }elseif(is_array($check)){
        foreach($check as $multi_array){
            if(array_key_exists($multi_array, $to_check)){
            //since your original array can be multidimensional     
            }
        }
    }
}