>php教程 >php手册 >php导入.sql文件到mysql数据库

php导入.sql文件到mysql数据库

WBOY
WBOY원래의
2016-05-26 15:21:552181검색

set_time_limit(0); //设置超时时间为0,表示一直执行。当php在safe mode模式下无效,此时可能会导致导入超时,此时需要分段导入 

$db =  new mysql($location['host'],$location['hostname'],$location['hostpass'],$location['table'],"utf8",$location['ztime']);   
$fp = @fopen($sql, "r") or die("不能打开sql文件 $sql");//打开文件 
while($sql=getnextsql()){ 
    mysql_query($sql); 
} 
//echo "用户数据导入完成!"; 
fclose($fp) or die("can't close file $file_name");//关闭文件 
//从文件中逐条取sql 
function getnextsql() { 
    global $fp; 
    $sql=""; 
    while ($line = @fgets($fp, 40960)) { 
        $line = trim($line); 
        //以下三句在高版本php中不需要,在部分低版本中也许需要修改 
        //$line = str_replace("\","",$line); 
        //$line = str_replace("'","'",$line); 
        //$line = str_replace("rn",chr(13).chr(10),$line); 
        //$line = stripcslashes($line); 
        if (strlen($line)>1) { 
            if ($line[0]=="-" && $line[1]=="-") { 
                continue; 
            } 
        } 
        $sql.=$line.chr(13).chr(10); 
        if (strlen($line)>0){ 
            if ($line[strlen($line)-1]==";"){ 
                break;//开源代码phprm.com 
            } 
        } 
    } 
    return $sql; 
}

                       


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.