Heim > Backend-Entwicklung > PHP-Tutorial > 三维数组插入数据库有关问题

三维数组插入数据库有关问题

WBOY
Freigeben: 2016-06-13 13:13:29
Original
751 Leute haben es durchsucht

三维数组插入数据库问题
$arrData = array(
'manager' =>'5',
'blogname' => '博客',
'domain' => 'bokee',
'user[1]'=>array('uid' => 1,'name'=>'zhangsan'),
'user[2]'=>array('uid'=>2,'name' => 'lisi'),
);
这个数组中的'manager','blogname','domain'要插到一个表中,而user[]要插到另一个表中,user[]还可能3,4,5.....请问这样要怎么做?谢谢了

------解决方案--------------------

PHP code

$arrData = array(
'manager' =>'5',
'blogname' => '博客',
'domain' => 'bokee',
'user[1]'=>array('uid' => 1,'name'=>'zhangsan'),
'user[2]'=>array('uid'=>2,'name' => 'lisi'),
);
foreach($arrData as $value){
    if(gettype($value) === 'array'){
        echo $value['uid'];
        echo $value['name'];
    }
}
<br><font color="#e78608">------解决方案--------------------</font><br>程序员对程序有百分百的控制权啊.
<br><font color="#e78608">------解决方案--------------------</font><br>楼主,那是二维数组:<br>
Nach dem Login kopieren
PHP code

$arrData = array(
'manager' =>'5',
'blogname' => '博客',
'domain' => '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;
    else
        $arr[$k] = $data;
}
print_r($arr);
#Array ( [manager] => 5 [blogname] => 博客 [domain] => bokee )
print_r($user);
#Array ( [0] => Array ( [uid] => 1 [name] => zhangsan ) [1] => Array ( [uid] => 2 [name] => lisi ) )
<br><font color="#e78608">------解决方案--------------------</font><br>这个就写1个 插入方法 和 字段生成方法吧.<br>先把 2个数组拆分<br>随手打的 可能有错误, 自己调整下。<br>
Nach dem Login kopieren
PHP code

$arrData = array(
'manager' =>'5',
'blogname' => '博客',
'domain' => 'bokee',
'user[1]'=>array('uid' => 1,'name'=>'zhangsan'),
'user[2]'=>array('uid'=>2,'name' => 'lisi'),
);
$data1 =array('manager' =>'5','blogname' => '博客','domain' => 'bokee',);
$data2 =(array)$arrData['user'];

//data1 我们就不说了.
function add($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))
   {
        return $res;
   }
   }
   //生成结果:uid,name
}
function create($key,$value,$table){
    insert into $table($key) values($value)
} <div class="clear">
                 
              
              
        
            </div>
Nach dem Login kopieren
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage