ホームページ  >  記事  >  バックエンド開発  >  PHP は SQL ファイルを読み取り、データベースにインポートします (phpmyadmin エクスポートをサポート)_PHP チュートリアル

PHP は SQL ファイルを読み取り、データベースにインポートします (phpmyadmin エクスポートをサポート)_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:05:171043ブラウズ

php は SQL ファイルを読み取り、データベースにインポートします (phpmyadmin エクスポートをサポート) このような状況で PHP が SQL ファイルを読み取ってデータベースにインポートする場合、最も一般的に使用される方法はデータベースのバックアップと復元であり、原理は非常に単純で、指定された形式に従って .sql ファイルにインポートするか、phpmyadmin を使用してエクスポートできます。このプログラムを使用してインポートを実行できます。

phpチュートリアル SQLファイルの読み取りとデータベースのインポートチュートリアル (phpmyadminエクスポートをサポート)
このような状況で PHP が SQL ファイルを読み取ってデータベースにインポートする場合、最も一般的に使用される方法はデータベースのバックアップと復元であり、原理は非常に単純で、指定された形式に従って .sql ファイルにインポートするか、phpmyadmin を使用してエクスポートできます。このプログラムを使用してインポートを実行できます。
*/

関数 into_sql($file)
{
global $mysqltutorial_host,$mysql_user,$mysql_password,$mysql_db,$mysql_table_prefix,$dbcharset;//データベース構成情報を取得します
Mysql_connect($mysql_host,$mysql_user,$mysql_password);
Mysql_select_db($mysql_db);

if( mysql_get_server_info() //link_identifier で使用されるサーバーのバージョンを返します。 link_identifier が省略された場合は、最後に開いた接続が使用されます。
{
$dbcharset='';//mysqlのバージョンが4.1未満の場合、文字セット情報は設定されません
}
if(空($dbcharset))
{
$dbcharset='gbk';
}
$dbcharset && mysql_query("set names '$dbcharset'") // 文字セットを設定します
If( mysql_get_server_info() > '5.0' )
{
mysql_query("set sql_mode=''");
}
$file2=file_get_contents($file);
$file2=iconv("utf-8","gbk",$file2);
$file2=str_replace("seotutorial_",$mysql_table_prefix,$file2);//ファイル内のデータベーステーブルのプレフィックスをユーザーが設定したプレフィックスに置き換えます

$file2=explode("n",$file2);//ファイルの内容を配列に一行ずつ読み込みます
$c1=カウント($file2);
for($j=0;$j {
$ck=substr($file2[$j],0,4);//各行の最初の 4 文字を取得します
If( ereg("#",$ck)||ereg("--",$ck) )//コメントを削除します
{
続行;
}
$arr[]=$file2[$j];//コメントされていないファイルの内容を配列 $arr に 1 行ずつ読み込みます。配列の各要素は 1 行に対応します
}
$read=implode("n",$arr); // ファイルの内容を文字列に再編成します (元の分割に従って 1 行ずつ)
$sql=str_replace("r",'',$read);//「r(復帰文字)」を削除
$detail=explode(";n",$sql);
//上記で整理したファイルの内容を完全な SQL ステートメント (; と n で区切る) として配列 $detail に再度インポートします
//この時点で、配列の詳細の各要素は完全な SQL ステートメントに対応します
$count=count($detail);
for($i=0;$i {
$sql=str_replace("r",'',$detail[$i]);//SQL の各行の復帰文字を削除します
$sql=str_replace("n",'',$sql);//改行文字を削除します
$sql=trim($sql);//先頭と末尾のスペースを削除します
//現在の$sql
if($sql)
{
If(eregi("create table",$sql))//現在の SQL ステートメントが新しいテーブルを作成する場合は、バージョンの互換性を考慮して文字セットをリセットします
{
//$mysqlv=mysql_get_server_info();
$sql=preg_replace("/default charset=([a-z0-9]+)/is","",$sql);//元の文字セット設定情報を削除
$sql=preg_replace("/type=myisam/is","engine=myisam",$sql);
If($dbcharset)
{
$sql=str_replace("engine=myisam"," Engine=myisam デフォルト charset=$dbcharset ",$sql);
}
If(mysql_get_server_info() {
$sql=preg_replace("/engine=myisam/is","type=myisam",$sql);//
}
}
mysql_query($sql);
}
}
}

?>

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/630792.html技術記事 PHP は SQL ファイルを読み取り、データベースにインポートします (phpmyadmin エクスポートをサポートします)。この場合、最も一般的に使用される方法は、データベースのバックアップと復元です。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。