データベースへの 3 次元配列挿入問題
$arrData = array(
'manager' =>'5',
'blogname' => 'Blog',
'domain' => ; 'bokee',
'user[1]'=>array('uid' => 1,'name'=>'zhangsan'),
'user[2]'=> array(' uid'=>2,'name' => 'lisi'),
);
この配列内の 'manager'、'blogname'、および 'domain' は、テーブルにユーザー [] を別のテーブルに挿入する必要がある場合、ユーザー [] は 3、4、5 の場合もあります。どうすればよいでしょうか?ありがとうございます
-----解決策---------
$arrData = 配列( 'マネージャー' => '5'、 'ブログ名' => 'ブログ', 'ドメイン' => 'bokee', 'user[1]'=>array('uid' => 1,'name'=>'zhangsan'), 'user[2]'=>array('uid'=>2,'name' => 'lisi'), ); foreach($arrData as $value){ if(gettype($value) === '配列'){ echo $value['uid']; echo $value['名前']; } } <br><font color="#e78608">------解決策------------------</font><br>プログラマはプログラムを 100% 制御できます。 <br><font color="#e78608">------解決策---------</font><br>所有者、これは 2 次元配列です: <br>
$arrData = 配列( 'マネージャー' => '5'、 'ブログ名' => 'ブログ', 'ドメイン' => 'bokee', 'user[1]'=>array('uid' => 1,'name'=>'zhangsan'), 'user[2]'=>array('uid'=>2,'name' => 'lisi'), ); #これは二次元配列です foreach($arrData as $k=>$data){ if(is_array($data)) $user[] = $data; それ以外 $arr[$k] = $data; } print_r($arr); #Array ( [マネージャー] => 5 [ブログ名] => ブログ [ドメイン] => bokee ) print_r($user); #Array ( [0] => Array ( [uid] => 1 [name] => zhangsan ) [1] => Array ( [uid] => 2 [name] => lisi ) ) <br><font color="#e78608">------解決策---------</font><br>挿入メソッドとフィールド生成を記述します。 <br> まず 2 つの配列を分割します <br> ランダムな型付けではエラーが発生する可能性がありますので、自分で調整してください。 <br>
$arrData = 配列( 'マネージャー' => '5'、 'ブログ名' => 'ブログ', 'ドメイン' => 'bokee', 'user[1]'=>array('uid' => 1,'name'=>'zhangsan'), 'user[2]'=>array('uid'=>2,'name' => 'lisi'), ); $data1 =array('manager' =>'5','blogname' => 'ブログ','ドメイン' => 'bokee',); $data2 =(配列)$arrData['ユーザー']; //data1 これについてはもう話しません。 関数追加($data,$table) { foreach($data as $v){ $key = implode('`,`',array_keys($v)); $key = ''.$key.''; $value = implode("','",array_values($v)); $value = "'".$value ."'"; if(!$res = create($key,$value,$table)) { $res を返します。 } } //結果を生成: uid、名前 } 関数 create($key,$value,$table){ $table($key) 値($value) に挿入 <div class="clear"></div>