thinkPHP5 フレームワークは複数のデータベース接続を実装します
以下は、複数データベース接続とクロスデータ接続クエリ操作を実装するための thinkPHP5 フレームワークを紹介する thinkphp フレームワーク チュートリアル コラムです。必要としている!
詳細は次のとおりです:
1. 複数のデータベース接続
方法 1:接続が必要な場合 他のデータベースの場合は、Db::connect()
メソッドを使用してデータベースに動的に接続します。メソッドのパラメータは、データベース内で構成された配列または文字列です。例:
文字列パラメータ:
Db::connect('mysql://root:1234@127.0.0.1:3306/thinkphp#utf8');
構成配列パラメータ:
Db::connect([ // 数据库类型 'type' => 'mysql', // 数据库连接DSN配置 'dsn' => '', // 服务器地址 'hostname' => '127.0.0.1', // 数据库名 'database' => 'thinkphp', // 数据库用户名 'username' => 'root', // 数据库密码 'password' => '', // 数据库连接端口 'hostport' => '', // 数据库连接参数 'params' => [], // 数据库编码默认采用utf8 'charset' => 'utf8', // 数据库表前缀 'prefix' => 'think_', ]);
詳細な使用法については、thinkphp5 完全開発マニュアルを参照してください: https://www.kancloud.cn/manual/ thinkphp5/118059
方法 2: アプリケーション構成ファイルに複数のデータベース構成を追加します。例:
'database1' => []//数据库配置数组 'database2' => []//数据库配置数组
接続する必要がある場合は、## を使用します。 #Db::connect("database1") 接続データベースを指定します。データベース操作を実行するときは、接続の直後に関数をチェーン内に記述します。例:
$db = Db::connect("database1"); $db->name("table")->select();
2. クロスデータベース接続クエリ
方法 1: Db::query("sql") メソッドを使用して SQL を実行します。ステートメントを作成し、SQL ステートメントで
database.table を使用してデータベースとテーブルを指定します。例:
select * from database1.table1 as t1 inner join database2.table2 as t2 where t1,id=t2.id
方法 2: ループを使用して、それぞれ異なるデータベースをクエリします
次に、データベース 1 のデータをクエリし、クエリ結果セットを走査し、そのデータを個別にクエリします。データベース 2 のスプライシング条件を満たしています。ps: 説明が適切でない場合は、質問してください以上がthinkPHP5 フレームワークは複数のデータベース接続を実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック









Pagoda に thinkphp5 をデプロイするときに報告されたエラーの解決策: 1. Pagoda サーバーを開き、php pathinfo 拡張機能をインストールして有効にします; 2. 「.access」ファイルをコンテンツ「RewriteRule ^(.*)$index.php」で構成します。 ?s=/$1 [QSA ,PT,L]”; 3. Web サイト管理で、thinkphp の疑似静的機能を有効にするだけです。

thinkphp5 の URL 書き換えが機能しない場合の解決策: 1. mod_rewrite.so モジュールが httpd.conf 設定ファイルにロードされているかどうかを確認します; 2.AllowOverride None の None を All に変更します; 3. Apache 設定ファイル .htaccess を「RewriteRule ^」に変更します(.*)$index.php [L,E=PATH_INFO:$1]」を選択して保存します。

thinkphp5 が要求された URL を取得するためのメソッド: 1. "\think\Request" クラスの "$request = Request::instance();" メソッドを使用して、現在の URL 情報を取得します。 2. 組み込みヘルパーを使用します。関数「$request-> url()」を使用して、ドメイン名を含む完全な URL アドレスを取得します。

TP5 が strpos 関数を使用してヘッダーの content-type 値で app/json 文字列を検索するため、thinkphp5 post は値を取得できません。解決策は、ヘッダーの content-type 値を app/json に設定することです。

thinkphp5 タイトル バー アイコンを削除する方法: 1. thinkphp5 フレームワーク public で favicon.ico ファイルを見つけます; 2. ファイルを削除するか、別の画像を選択して名前を favicon.ico に変更し、元の favicon.ico ファイルを置き換えます。

thinkphp5 でコントローラーが存在しないというプロンプトが表示される場合の解決策: 1. 対応するコントローラーの名前空間が正しく記述されているかどうかを確認し、正しい名前空間に変更します; 2. 対応する tp ファイルを開いてクラス名を変更します。

ThinkPHP5 で昨日のデータをクエリする方法: 1. ThinkPHP5 関連ファイルを開きます; 2. 式「db('table')->whereTime('c_time', 'yesterday')->select();」を使用して昨日のデータをクエリします。 。

thinkphp5 でエラー プロンプトを設定する方法: 1. プロジェクト ルート ディレクトリのパブリック フォルダーに入り、index.php エントリ ファイルを開きます; 2. デバッグ モード スイッチに関するコメントを表示します; 3. 「APP_DEBUG」定数の値を調整しますtrue に設定すると、エラー メッセージ プロンプトが表示されます。
