ホームページ php教程 php手册 PHP は txt ファイルを読み取って SQL を形成し、それをデータベース コードに挿入します (Zjmainstay からのオリジナル)

PHP は txt ファイルを読み取って SQL を形成し、それをデータベース コードに挿入します (Zjmainstay からのオリジナル)

Jun 13, 2016 am 11:59 AM
php sql txt コード オリジナル 入れる データベース 書類 構成 読む

/**
* $splitChar フィールド区切り文字
* $file データ ファイル ファイル名
* $table データベース テーブル名
* $conn データベース接続
* $fields データに対応する列名
* $insertType 挿入操作タイプ (INSERT、REPLACE を含む)
*/

コードをコピー コードは次のとおりです:


/**
* $splitChar フィールド区切り文字
* $file データ ファイル ファイル名
* $table データベース テーブル名
* $conn データベース接続
* $fields データに対応する列名
* $insertType 挿入操作タイプ (INSERT、REPLACE を含む)
*/
functionloadTxtDataIntoDatabase($splitChar,$file,$table,$conn,$fields=array(),$insertType='INSERT'){
if(empty($fields) )) $ head = "{$insertType} INTO `{$table}` VALUES('";
else $head = "{$insertType} INTO `{$table}`(`".implode('`, `', $fields)."`) VALUES('"; //データヘッダ
$end = "')"
$sqldata = トリム(file_get_contents($file)); preg_replace(' /s*/i','',$splitChar) == '') {
$splitChar = '/(w )(s )/i';
$replace = "$1'; '";
$specialFunc = 'preg_replace';
}else {
$splitChar = $splitChar;
$replace = "','";
$specialFunc = 'str_replace';
}
//データ本体の処理では、2 つの順序を入れ替えることはできません。そうしないと、スペースまたはタブ区切り文字を使用するとエラーが発生します。
$sqldata = preg_replace('/(s*)(n )(s*)/i',' '),('',$sqldata); //改行を置換
$sqldata = $specialFunc($splitChar,$replace,$sqldata); //区切り文字を置換>$query = $head.$sqldata .$end; //データのスプライシング
if(mysql_query($query,$conn)) return array(true);
else {
return array(false, mysql_error($conn),mysql_errno($ conn));
}
}
//呼び出し例 1
require 'db.php'; /垂直バー
$file = 'sqldata1.txt';
$fields = array('id','parentid','name'); result = loadTxtDataIntoDatabase($splitChar,$file ,$table,$conn,$fields);
if (array_shift($result)){
echo '成功!
'; }else {
echo '失敗しました !--エラー:'.array_shift($result).'
';
}
/*sqlda ta1.txt
|0| A
|1|B
|1|C
|2|D
-- cengji
CREATE TABLE `cengji` (
`id` int(11) NOT NULL AUTO_INCREMENT 、
`parentid` int( 11) NOT NULL、
`name` varchar(255) DEFAULT NULL、
PRIMARY KEY (`id`)、
UNIQUE KEY `parentid_name_unique` (`parentid` ,`name`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1602 DEFAULT CHARSET=utf8
*/
//呼び出し例 2
require 'db.php';
$splitChar = ' '; //space
$file = 'sqldata2.txt';
$fields = array('id','make','model','year');車';
$result =loadTxtDataIntoDatabase($splitChar,$file,$table,$conn,$fields);
if (array_shift($result)){
echo '成功!
';
}else {
echo '失敗しました!--エラー:'.array_shift($result).'
';
}
/* sqldata2.txt
アストン DB19 2009
アストン DB29 2009
アストン DB39 2009
-- 車
CREATE TABLE `cars` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`make` varchar(16) NOT NULL 、
`model` varchar(16) DEFAULT NULL、
`year` varchar(16) DEFAULT NULL、
主キー (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET= utf8
*/
//呼び出し例 3
require 'db.php';
$splitChar = ' '; $file = 'sqldata3.txt';
$fields = array('id','make','model','year');
$table = 'cars'; 'REPLACE';
$result =loadTxtDataIntoDatabase ($splitChar,$file,$table,$conn,$fields,$insertType);
if (array_shift($result)){
echo '成功!
';
}else {
echo '失敗しました!--エラー:'.array_shift($result).'
}
/ * sqldata3.txt
Aston DB19 2009
Aston DB29 2009
Aston DB39 2009
*/
//呼び出し例 3
require 'db.php'; = ' '; //Tab
$ file = 'sqldata3.txt';
$fields = array('id','value'); //テーブルは次のようになります。存在しません
$result =loadTxtDataIntoDatabase($splitChar ,$file,$table,$conn,$fields);
if (array_shift($result)){
echo 'Success!
}else {
echo '失敗しました!--エラー:'.array_shift($result).'
'
}
//添付ファイル: db. php
/* //この行をコメント化します
?>
static $connect = null
static $table = 'jilian'; (!isset($connect)) {
$connect = mysql_connect("localhost","root","");
if(!$connect) {
$connect = mysql_connect("localhost") ,"Zjmainstay","");
}
if(!$connect) {
die('データベースに接続できません。/test/db.php による致命的なエラー処理'); >}
mysql_select_db("test", $connect);
mysql_query("SET NAMES utf8",$connect);
$conn = &$connect;
}
?>
//*/


データテーブル構造



コードをコピー

コードは次のとおりです:


--データテーブル構造:
-- 100000_insert,1000000_insert
CREATE TABLE `100000_insert` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`parentid` int (11) NOT NULL、
`name` varchar(255) DEFAULT NULL、
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8
100000 (100,000 )行挿入: Insert 100000_line_data use 2.5534288883209 秒
1000000 (100万) 行挿入: Insert 1000000_line_data use 19.677318811417 秒
//考えられるエラー: MySQL サーバーが消えました
//解決策: ini/my を変更します。 .cnf max_allowed_pa​​cket=20M


作成者: Zjmainstay
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 Apr 05, 2025 am 12:04 AM

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

PHPでの後期静的結合を説明します(静的::)。 PHPでの後期静的結合を説明します(静的::)。 Apr 03, 2025 am 12:04 AM

静的結合(静的::) PHPで後期静的結合(LSB)を実装し、クラスを定義するのではなく、静的コンテキストで呼び出しクラスを参照できるようにします。 1)解析プロセスは実行時に実行されます。2)継承関係のコールクラスを検索します。3)パフォーマンスオーバーヘッドをもたらす可能性があります。

PHPマジックメソッド(__construct、__destruct、__call、__get、__setなど)とは何ですか? PHPマジックメソッド(__construct、__destruct、__call、__get、__setなど)とは何ですか? Apr 03, 2025 am 12:03 AM

PHPの魔法の方法は何ですか? PHPの魔法の方法には次のものが含まれます。1。\ _ \ _コンストラクト、オブジェクトの初期化に使用されます。 2。\ _ \ _リソースのクリーンアップに使用される破壊。 3。\ _ \ _呼び出し、存在しないメソッド呼び出しを処理します。 4。\ _ \ _ get、dynamic属性アクセスを実装します。 5。\ _ \ _セット、動的属性設定を実装します。これらの方法は、特定の状況で自動的に呼び出され、コードの柔軟性と効率を向上させます。

MySQL:簡単な学習のためのシンプルな概念 MySQL:簡単な学習のためのシンプルな概念 Apr 10, 2025 am 09:29 AM

MySQLは、オープンソースのリレーショナルデータベース管理システムです。 1)データベースとテーブルの作成:createdatabaseおよびcreateTableコマンドを使用します。 2)基本操作:挿入、更新、削除、選択。 3)高度な操作:参加、サブクエリ、トランザクション処理。 4)デバッグスキル:構文、データ型、およびアクセス許可を確認します。 5)最適化の提案:インデックスを使用し、選択*を避け、トランザクションを使用します。

クロスサイトリクエストフォーファリー(CSRF)とは何ですか?また、PHPにCSRF保護をどのように実装しますか? クロスサイトリクエストフォーファリー(CSRF)とは何ですか?また、PHPにCSRF保護をどのように実装しますか? Apr 07, 2025 am 12:02 AM

PHPでは、予測不可能なトークンを使用して、CSRF攻撃を効果的に防ぐことができます。特定の方法には次のものが含まれます。1。フォームのCSRFトークンを生成および埋め込みます。 2.リクエストを処理するときにトークンの有効性を確認します。

一致式(PHP 8)とそれがスイッチとどのように異なるかを説明します。 一致式(PHP 8)とそれがスイッチとどのように異なるかを説明します。 Apr 06, 2025 am 12:03 AM

PHP8では、一致式は、式の値に基づいて異なる結果を返す新しい制御構造です。 1)Switchステートメントに似ていますが、実行ステートメントブロックの代わりに値を返します。 2)一致式の式は厳密に比較され、セキュリティが向上します。 3)スイッチステートメントの脱落の可能性を回避し、コードのシンプルさと読みやすさを向上させます。

PHPとPython:2つの一般的なプログラミング言語を比較します PHPとPython:2つの一般的なプログラミング言語を比較します Apr 14, 2025 am 12:13 AM

PHPとPythonにはそれぞれ独自の利点があり、プロジェクトの要件に従って選択します。 1.PHPは、特にWebサイトの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンス、機械学習、人工知能に適しており、簡潔な構文を備えており、初心者に適しています。

PHPの未来:適応と革新 PHPの未来:適応と革新 Apr 11, 2025 am 12:01 AM

PHPの将来は、新しいテクノロジーの傾向に適応し、革新的な機能を導入することで達成されます。1)クラウドコンピューティング、コンテナ化、マイクロサービスアーキテクチャに適応し、DockerとKubernetesをサポートします。 2)パフォーマンスとデータ処理の効率を改善するために、JITコンパイラと列挙タイプを導入します。 3)パフォーマンスを継続的に最適化し、ベストプラクティスを促進します。

See all articles