- 類型:數(shù)據(jù)庫(kù)類大。10.3M語(yǔ)言:多國(guó)語(yǔ)言[中文] 評(píng)分:8.5
- 標(biāo)簽:
做網(wǎng)站的時(shí)候 我們會(huì)制作一個(gè)安裝文件 就需要用到sql文件創(chuàng)建數(shù)據(jù)庫(kù)。
分享一下 我所用的方法。只對(duì)phpmyadmin導(dǎo)出的sql文件有效
$dbfile="test.sql";
$content=iconv("UTF-8","GB2312",file_get_contents($dbfile));
//獲取創(chuàng)建的數(shù)據(jù)
//去掉注釋
$content=preg_replace("/--.*\n/iU","",$content);
//替換前綴
$content=str_replace("ct_",TABLE_PRE,$content);
$carr=array();
$iarr=array();
//提取create
preg_match_all("/Create table .*\(.*\).*\;/iUs",$content,$carr);
$carr=$carr[0];
foreach($carr as $c)
{
@mysql_query($c,$link);
}
//提取insert
preg_match_all("/INSERT INTO .*\(.*\)\;/iUs",$content,$iarr);
$iarr=$iarr[0];
//插入數(shù)據(jù)
foreach($iarr as $c)
{
@mysql_query($c,$link);
}