このmysql_
拡張機能は現在のバージョンのPHPで非推奨になり、ある時点で削除されると言われています。
これの代わりに何をどのように使用すればよいですか?
ほぼすべてのクエリで使用しています。
例えば:
$result = mysql_query($query);
if (!$result) die ("Database access failed: " . mysql_error());
$rows = mysql_num_rows($result);
PHP
マニュアルによると、次のいずれかを使用する必要があります。
ただし、明確にするために、これらはどちらも単なる代替ではありませんmysql_num_rows()
。の代わりにMySQLiまたはPDOAPIを使用するには、最終的にコードを完全に書き直す必要がありますmysql_*()
。
データベース抽象化ライブラリの概念を理解している場合は、safemysqlを使用してください
$data = $db->getAll($query,$param1,$param2);
$rows = count($data);
生のAPI関数の使用に慣れている場合は、PDOを使用してください
$stm = $pdo->prepare($query);
$stm->execute(array($param1,$param2));
$data = $stm->fetchAll();
$rows = count($data);
2つの重要なことに注意してください。
個人的には、MySQLImproved拡張機能を使用しています。
手続き的な方法で使用することを選択した場合は、現在古いMySQL拡張機能を使用している方法と非常によく似た方法で使用できます。
例(MySQL):
$result = mysql_query($query);
if (!$result) die ("Database access failed: " . mysql_error());
$rows = mysql_num_rows($result);
例(MySQLの改善):
$result = mysqli_query($query);
if (!$result) die ("Database access failed: " . mysqli_error());
$rows = mysqli_num_rows($result);
ただし、オブジェクト指向の方法でMySQLImprovedを使用しています。
詳細については、http ://www.php.net/manual/en/book.mysqli.phpを参照してください。
php.net/mysql_num_rows
マニュアル経由
mysql_num_rows
この拡張機能はPHP5.5.0で非推奨になり、将来削除される予定です。代わりに、MySQLiまたはPDO_MySQL拡張機能を使用する必要があります。詳細については、MySQL:APIガイドの選択および関連するFAQも参照してください。この機能の代替手段は次のとおりです。
前述の公式のmysql_num_rows関数の説明と同様に、代わりにMysqliまたはPDO_MYSQLを使用できます。
それらはもはや維持されておらず、公式に非推奨になっています。赤いボックスが表示されますか?代わりにプリペアドステートメントについて学び、 PDOまたはMySQLiを使用してください。この記事はどちらを決定するのに役立ちます。
PDOを選択した場合、ここに良いチュートリアルがあります