0

groupi_id、application_id、grant_idの各フィールドを持つテーブルに挿入したい次の配列があります

配列は

array(
    'ApplicationsGrant' => array(
        'group_id' => array(
            (int) 0 => '72',
            (int) 1 => '72'
        ),
        'application_id' => array(
            (int) 0 => '1',
            (int) 1 => '2'
        ),
        'grant_id' => array(
            (int) 0 => 56,
            (int) 1 => 57
        )
    )
)

すべてのサブ配列が配列キーと一緒に行く行を挿入したいと思います。したがって、このように上記の場合に2行が挿入されます

テーブルに挿入(group_idapplication_idgrant_id)値(72、1、56); テーブルに挿入(group_idapplication_idgrant_id)値(72、2、57);

どうやってやったの?

4

2 に答える 2

1

CakeのSet::classicExtract()を使用して、値を引き出すことができます。それらをDBに保存する方法を知っていると思います。

http://book.cakephp.org/2.0/en/core-utility-libraries/set.html

あなたの場合、(テストされていない)のようなもの:

$result1 = Set::classicExtract($a, '{n}.{s}.{s}.0');
$result2 = Set::classicExtract($a, '{n}.{s}.{s}.1');

キーが必要な場合は、最初にそれらを抽出できます。

$fields = Set::classicExtract($a, '{n}.{s}.{s}');
于 2012-04-07T08:51:46.263 に答える
-1

私はこれを試しました

    $d = array(
        'ApplicationsGrant' => array(
            'group_id' => array(
                (int) 0 => '72',
                (int) 1 => '72'
            ),
            'application_id' => array(
                (int) 0 => '1',
                (int) 1 => '2'
            ),
            'grant_id' => array(
                (int) 0 => 56,
                (int) 1 => 57
            )
        )
    );
    for ($i=0; $i<count($d['ApplicationsGrant']['group_id']); $i++) {
        echo $d['ApplicationsGrant']['group_id'][$i]."<br/>"; //outputs 72, 72
    }
于 2012-04-07T02:52:19.350 に答える