PHP 8.4.1 Released!

mysql_num_fields

(PHP 4, PHP 5)

mysql_num_fieldsGet number of fields in result

Увага

Це розширення застаріле, починаючи з PHP 5.5.0, та вилучене з PHP 7.0.0. Натомість використовуються розширення MySQLi або PDO_MySQL. Докладніше описано у керівництві MySQL: вибір API. Цю функцію можна замінити на:

Опис

mysql_num_fields(resource $result): int|false

Retrieves the number of fields from a query.

Параметри

result

Результат типу resource для опрацювання, якого повертає функція mysql_query().

Значення, що повертаються

Returns the number of fields in the result set resource on success або false в разі помилки.

Приклади

Приклад #1 A mysql_num_fields() example

<?php
$result
= mysql_query("SELECT id,email FROM people WHERE id = '42'");
if (!
$result) {
echo
'Could not run query: ' . mysql_error();
exit;
}

/* returns 2 because id,email === two fields */
echo mysql_num_fields($result);
?>

Примітки

Зауваження:

Для зворотньої сумісності, можна використовувати такий застарілий псевдонім: mysql_numfields()

Прогляньте також

add a note

User Contributed Notes 3 notes

up
0
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.
up
-2
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
up
-5
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.
To Top