PHP 5.5 での mysql_ 関数の非推奨とその後の PHP 7 での削除にもかかわらず、開発者は次のような可能性があります。単純にそれらを mysqli_ の対応するものに置き換えたくなるでしょう。ただし、このアプローチは意図しない結果を招く可能性があります。
これらの関数は似た名前と一般的な機能を共有していますが、それらの間には微妙な違いがあります。たとえば、mysql_query() 関数はリソース ハンドルを返し、mysqli_query() は mysqli_result オブジェクトを返します。これは重要ではないように思えるかもしれませんが、戻り値の型の変更を処理するためにコードが適切に調整されていない場合、エラーが発生する可能性があります。
この問題を認識して、変換ツールが開発されました。開発者がコードを mysql_ から mysqli_ に移行できるように支援します。 https://github.com/philip/MySQLConverterTool で利用できるこのツールは、変換プロセスを自動化し、スクリプトをすぐに正しく動作させることができます。
変換ツールの使用は便利な解決策ですが、オブジェクト指向の方法論にアップグレードする機会にもなる可能性があります。このアプローチにより、関数の mysqli_ プレフィックスが不要になるだけでなく、コード構成が簡素化され、読みやすさも向上します。
主な違いを説明するには、次の点を考慮してください。例:
接続:
<br>mysql_connect($host, $username, $password);<br>
vs.
<br>$mysqli = new mysqli($host, $username, $password, $database);<br>
クエリ:
<br>$result = mysql_query($sql);<br>
vs.
<br>$result = mysqli_query($mysqli, $sql);<br>
結果の取得:
<br>while ($row = mysql_fetch_assoc($result))<br>
vs.
<br>while ($row = $result->fetch_assoc())<br>
閉じる接続:
mysql_close();
vs.
&l t;pre>
$mysqli->close();
以上がPHP の「mysql_」関数から「mysqli_」関数に安全に移行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。