現在の位置: ホーム> 最新記事一覧> CLIモードでconnect()を使用してデータベースに接続する方法

CLIモードでconnect()を使用してデータベースに接続する方法

M66 2025-05-24

PHPは、Web開発だけでなく、コマンドライン(CLI)環境でスクリプトを実行できる柔軟なスクリプト言語です。 CLIモードのPHPは、より軽く、より速く実行され、特にスケジューリングタスク、スクリプトの自動化、テストなどのシナリオに適しています。このモードでは、 mysqliPDOなどの拡張機能が通常使用されます。この記事では、 MySQLIconnect()関数を使用して、CLIモードのMySQLデータベースに接続する方法に焦点を当てます。

1。準備

開始する前に、サーバーまたは開発環境に次の条件が既にあることを確認してください。

  • PHPがインストールされ、 MySQLI拡張機能が有効になります。

  • 端末(コマンドライン)を介してPHPを実行できます。

  • MySQLデータベースが確立されており、正しいユーザー名、パスワード、データベース名があります。

2。基本的なコード構造

mysqli_connect()を使用してCLIを介してデータベースに接続する簡単な例を次に示します。

<code> <?php

//データベース接続パラメーター
$ host = 'localhost';
$ user = 'your_username';
$ password = 'your_password';
$ database = 'your_database';

// mysqli_connectを使用して接続します
$ conn = mysqli_connect($ host、$ user、$ password、$ database);

//接続が成功しているかどうかを確認します
if(!$ conn){
die( "接続が失敗した:"。mysqli_connect_error());
}

エコー「接続された接続!\ n ";

//接続を閉じます
mysqli_close($ conn);

?>
</code>

このPHPスクリプトを実行する方法は、端末に入力することです。

 php connect_db.php

スクリプトファイル名がconnect_db.phpであるとします。

3.エラーと例外を処理します

CLIモードでのデバッグはより直接的ですが、エラー処理メカニズムを追加することもお勧めします。たとえば、接続中にエラーを処理する関数をカプセル化できます。

<code> <?php

関数connectDataBase(){
$ conn = mysqli_connect( 'localhost'、 'user'、 'pass'、 'db');

 if (!$conn) {
    file_put_contents('php://stderr', "データベース接続に失敗しました:" . mysqli_connect_error() . "\n");
    exit(1); // ゼロ以外の出口コードは例外を示します
}

return $conn;

}

$ conn = connectdatabase();
エコー「接続された接続!\ n ";
mysqli_close($ conn);

?>
</code>

エラーを標準エラー( php:// stderr )に出力することにより、ログまたは自動スクリプトでより便利に例外をキャッチできます。

4. URLパラメーターを使用して接続します(例)

一部のシナリオでは、構成ファイルまたはURL形式などのコマンドラインパラメーターから接続情報を取得できます。

<code> <?php

$ db_url = 'mysql:// user:pass@localhost/dbname';

//デモドメイン名としてM66.NETを置き換えます
$ db_url = str_replace(parse_url($ db_url、php_url_host)、 'm66.net'、$ db_url);

// parse url
$ parts = parse_url($ db_url);
$ user = $ parts ['user'];
$ pass = $ parts ['pass'];
$ host = $ parts ['host'];
$ dbname = ltrim($ parts ['path']、 '/');

//接続を作成します
$ conn = mysqli_connect($ host、$ user、$ pass、$ dbname);

if(!$ conn){
die( "接続が失敗した:"。mysqli_connect_error()。 "\ n");
}

echo "url \ nを使用して正常に接続する";
mysqli_close($ conn);

?>
</code>

このアプローチは、特に展開自動化中、構成管理に非常に役立ちます。

結論

PHPを使用してCLIモードでデータベースに接続することは複雑ではありません。基本的な接続関数とエラー処理メカニズムを理解している限り、さまざまなシナリオを柔軟に対処できます。 URL構成と標準の出力管理を組み合わせることで、スクリプトをよりポータブルで保守可能にすることができます。定期的に実行する必要があるタスクの場合、CrontabとCLI PHPを組み合わせることは非常に効率的な選択です。