PHP 7を使用してデータベース(MySQL、postgreSQL)に接続する方法
phpのmysqli拡張(改良されたmysql拡張機能)は、mysqlデータベースと相互作用する堅牢な方法を提供します。 コア関数は
です。 この関数は、サーバーホスト名(またはIPアドレス)、ユーザー名、パスワード、およびデータベース名を引数として取得します。 接続が成功したときに接続オブジェクトを返します。または故障時にmysqli_connect()
false
<code class="php"><?php $servername = "localhost"; $username = "your_username"; $password = "your_password"; $dbname = "your_database_name"; // Create connection $conn = new mysqli($servername, $username, $password, $dbname); // Check connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } echo "Connected successfully"; $conn->close(); ?></code>postgreSql接続:
postgreSQLの場合、PHPは
拡張機能から関数を利用します。 MySQLIと同様に、サーバーアドレス、ユーザー名、パスワード、およびデータベース名が必要です。 この関数は、成功に関する接続リソースを返します。そうしないと、pg_connect()
pg_
false
このコードを実行する前に、必要なPHP拡張機能(mySQLおよびpostgresqlの場合は
<code class="php"><?php $conn_string = "host=localhost port=5432 dbname=your_database_name user=your_username password=your_password"; $conn = pg_connect($conn_string); if (!$conn) { die("Error in connection: " . pg_last_error()); } echo "Connected successfully"; pg_close($conn); ?></code>)は、接続を確立するための主要な機能です。
(接続後に特定のデータベースを選択するため)のような他の関連関数もよく使用されます。 mysqli
(永続的な接続の場合)が利用可能な他の機能もあります。 エラーメッセージがないことに依存して、接続が成功することを想定しないでください。 接続しようとした後、常にエラーを明示的に確認してください。 pg_
objectのプロパティは、詳細なエラーメッセージを提供します。
<code class="php"><?php $servername = "localhost"; $username = "your_username"; $password = "your_password"; $dbname = "your_database_name"; // Create connection $conn = new mysqli($servername, $username, $password, $dbname); // Check connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } echo "Connected successfully"; $conn->close(); ?></code>
単純な接続エラーを超えて、特にデータベースクエリを実行する場合は、より包括的なエラー処理のためにトライキャッチブロックを使用することを検討してください。 ファイルへのロギングエラーまたはエラー通知の送信も適切なプラクティスです。
config.php
大規模なアプリケーションについては、Hashicorp VaultやAWS Secrets Managerなどの専用の秘密管理ソリューションを使用することを検討してください。 これらは、機密情報を保存および管理するためのより安全な方法を提供します。可能であれば、スーパーユーザーの特権を持つユーザーの使用は避けてください。.htaccess
以上がPHP 7でデータベース(MySQL、PostgreSQL)に接続する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。