mysql_num_fields
(PHP 4, PHP 5)
mysql_num_fields — 結果におけるフィールドの数を得る
警告
この拡張モジュールは PHP 5.5.0 で非推奨になり、PHP 7.0.0 で削除されました。 MySQLi あるいは PDO_MySQL を使うべきです。詳細な情報は MySQL: API の選択 を参照ください。 この関数の代替として、これらが使えます。
例
例1 mysql_num_fields() の例
<?php
$result = mysql_query("SELECT id,email FROM people WHERE id = '42'");
if (!$result) {
echo 'Could not run query: ' . mysql_error();
exit;
}
/* id,email の 2 つのフィールドがあるので、2 を返す */
echo mysql_num_fields($result);
?>
注意
注意:
下位互換のために、次の非推奨別名を使用してもいいでしょう。 mysql_numfields()
参考
- mysql_select_db() - MySQL データベースを選択する
- mysql_query() - MySQL クエリを送信する
- mysql_fetch_field() - 結果からカラム情報を取得し、オブジェクトとして返す
- mysql_num_rows() - 結果における行の数を得る
+add a note
User Contributed Notes 3 notes
php at jezusisheer dot nl ¶
17 years ago
Note that, if you want to get the amount of columns of a table and you're using the "SHOW COLUMNS FROM $table" query, you will have to use mysql_num_rows() instead of mysql_num_fields() on the result. This becomes logical when thinking about it, because the SHOW COLUMNS query returns a result with six columns (Field, Type, Null, Key, Default and Extra) and with a single row for every column found. If you'd count the number of fields, you'd always get 6. If you count the number of rows, you'll get the amount of columns found.
matt at iwdt dot net ¶
23 years ago
here's one way to print out a row of <th> tags from a table
NOTE: i didn't test this
$result = mysql_query("select * from table");
for ($i = 0; $i < mysql_num_fields($result); $i++) {
print "<th>".mysql_field_name($result, $i)."</th>\n";
}
post a comment if there's an error
bwark at stanford dot edu ¶
23 years ago
If you just want the number of fields in a table, you can do something like this:
<?php
$db_id = mysql_connet();
$result = mysql_query("DESCRIBE [tableName], $db_id);
$numFields = mysql_num_rows($result);
?>
Because "DESCRIBE" returns one row for each field in the table (at least in MySQL), this will work.
↑ and ↓ to navigate •
Enter to select •
Esc to close
Press Enter without
selection to search using Google