2012-05-04 23 views
0

私はそれが配列になるとあまり良くありませんので、ここにはおそらく何か非常にシンプルですが、私のためではありません!私はPOSTを介して値の配列を取得していると私はそれらを解析し、テーブルに値を格納する必要があります。phpの配列の値を

[item] => Array 
     (
      [tags] => Array 
       (
        [0] => Bluetooth 
        [1] => WiFi 
        [2] => USB 
       ) 

     ) 

This is the entire POST array: 

Array 
(
    [prodid] => 
    [Submit] => Save 
    [productcode] => 797987 
    [cat_id] => 66 
    [brand] => Fysiomed 
    [name] => asdc asdc asd c 
    [productnew] => yes 
    [item] => Array 
     (
      [tags] => Array 
       (
        [0] => Bluetooth 
        [1] => WiFi 
        [2] => USB 
       ) 

     ) 

    [size] => 1 
    [barcode] => 7979871 
    [price] => 233.00 
    [priceoffer] => 0.00 
    [stock] => 50 
    [weight] => 0.30 
    [orderby] => 1 
) 
+0

あなたのPOST入力は何ですか? – adrien

+0

POSTアレイの外観はどうですか? –

+0

POST配列が1番目の投稿に追加されました。 – bikey77

答えて

1
if(isset($_POST['item']) && isset($_POST['item']['tags'])){ 
    foreach($_POST['item']['tags'] as $tag){ 
    //do stuff...e.g. 
    echo $tag; 
    } 
} 
+0

を使って反復する必要はありません。 – bikey77

+0

心配はいりません。チックをありがとう:) – Pete

0

は、あなただけのテキストを取得しようとしています:

foreach($array as $a) { 
    $text = $a->text; 
    $name = $a->user->name; 
} 

などの配列はこのように見て解析する:どのように私は、次のような古典的な解析を使用する必要がありますか?これを試して。

foreach($array['item']['tags'] as $tag) { 
    $text = $tag; 
} 
+0

これは、次のように出力します。警告:foreach()の引数が無効です。 – bikey77

+1

'tag'は 'tags'にする必要があります。 – andrewsi

+0

配列を呼び出す配列に置き換える必要があります。 $ _POSTかもしれない。 – jarchuleta

1
if(isset($_POST) && !empty($_POST)) { 
    foreach($_POST as $key => $value) { 
    if($key == 'item') { 
     echo $value[$key]['tag'][0]. '<br>'; 
     echo $value[$key]['tag'][1]. '<br>'; 
     echo $value[$key]['tag'][2]. '<br>'; 
    } 
    } 
} 
+0

あなたは完全な$ _POST配列 – Pete

1

あなたの配列がこのような形をしているように見える、この

$array = array("item" => array("tags" => array("Bluetooth", "Wifi", "USB"))); 
var_dump($array); 

をチェックあなたはこの配列を解析するために今、この

array(1) { 
    ["item"]=> 
    array(1) { 
    ["tags"]=> 
    array(3) { 
     [0]=> 
     string(9) "Bluetooth" 
     [1]=> 
     string(4) "Wifi" 
     [2]=> 
     string(3) "USB" 
    } 
    } 
} 

のようなものが表示されます、

foreach($array as $in => $val) { 
    // as $array has key=>value pairs, only one key value pair 
    // here $in will have the key and $val will have the value 
    // $in will be "item" 
    print $in; // this will print "item" 
    foreach($val as $in2 => $val2){ 
     // only one key : "tags" 
     print $in; // this will print "tags" 
     print $val2[0]; // this will print "Bluetooth" 
     print $val2[1]; // this will print "Wifi" 
    } 
} 

これは、配列に関する疑問を解消したいと考えています。

+0

私はそれらをもっと試して理解するために例としてこれを使用します。ありがとうございました。 – bikey77