基于条件语句从多维数组中提取值

时间:2014-02-05 20:54:26

标签: php arrays forms multidimensional-array shopify

我有一个提交变量的表单,我们称之为$ _POST ['sku']。

此表单还将一些变量提交给外部webapp(Shopify),后者返回一个数组,如下所示:

['product'] ['variants'],最多有27个变种,即

['product']['variants'][1]
['product']['variants'][2]
['product']['variants'][3] ...
['product']['variants'][27]

每个变体都有几个键,例如:

['product']['variants'][0]['id']
['product']['variants'][0]['sku'];

也就是说,变体0同时具有唯一的id和sku,变体1,变体2等也是如此。

我想使用php从'id'键中提取值,其中'sku'值等于从我的表单提交的$ _POST ['sku']值。例如,

如果$ _POST ['sku'] = 222

和['product'] ['variants'] [3] ['sku'] = 222

然后我想提取['product'] ['variants'] [3] ['id']。

我迷失在这里 - 任何想法?

1 个答案:

答案 0 :(得分:0)

基本上是这样的:

foreach($variable['product']['variants'] as $i=>$variant) {
   if($variant['sku'] == $_POST['sku']) {
      // found it in $variable['product']['variants'][$i] so variant $i
      break;
   }
}