Files
php-doc-ru/reference/mysql/functions/mysql-fetch-assoc.xml
Nilgün Belma Bugüner 2db753bdad changed EN-Revision tag as cvs2svn;
fixed svn properties

git-svn-id: https://svn.php.net/repository/phpdoc/ru/trunk@283930 c90b9560-bf6c-de11-be94-00142212c4b1
2009-07-12 06:01:07 +00:00

128 lines
4.9 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: n/a Maintainer: lovchy Status: ready -->
<!-- splitted from ./en/functions/mysql.xml, last change in rev 1.45 -->
<refentry xml:id="function.mysql-fetch-assoc" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>mysql_fetch_assoc</refname>
<refpurpose>
Обрабатывает ряд результата запроса и возвращает ассоциативный массив.
</refpurpose>
</refnamediv>
<refsect1>
<title>Описание</title>
<methodsynopsis>
<type>array</type><methodname>mysql_fetch_assoc</methodname>
<methodparam><type>resource</type><parameter>result</parameter></methodparam>
</methodsynopsis>
<para>
Возвращает ассоциативный массив с названиями индексов, соответсвующими
названиям колонок или &false; если рядов больше нет.
</para>
<para>
Функция <function>mysql_fetch_assoc</function> аналогична вызову функции
<function>mysql_fetch_array</function> со вторым параметром, равным
MYSQL_ASSOC. Функция возвращает только ассоциативный массив.
Если вам нужны как ассоциативные, так и численные индексы в массиве,
обратитесь к функции <function>mysql_fetch_array</function>.
</para>
<para>
Если несколько колонок в запросе имеют одинаковые имена, значение ключа
массива с индексом названия колонок будет равно значению последней из
колонок. Чтобы работать с первыми, используйте функции, возвращающие
не ассоциативный массив: <function>mysql_fetch_row</function>, либо используйте алиасы.
Смотрите пример использования алиасов в SQL в описании
функции <function>mysql_fetch_array</function>.
</para>
<para>
Важно заметить, что
<function>mysql_fetch_assoc</function> работает <emphasis>НЕ
</emphasis> медленнее, чем
<function>mysql_fetch_row</function>, предоставляя более удобный доступ к
данным.
</para>
&database.field-case;
<para>
<example>
<title>Расширенный пример использования <function>mysql_fetch_assoc</function></title>
<programlisting role="php">
<![CDATA[
<?php
$conn = mysql_connect("localhost", "mysql_user", "mysql_password");
if (!$conn) {
echo "Unable to connect to DB: " . mysql_error();
exit;
}
if (!mysql_select_db("mydbname")) {
echo "Unable to select mydbname: " . mysql_error();
exit;
}
$sql = "SELECT id as userid, fullname, userstatus
FROM sometable
WHERE userstatus = 1";
$result = mysql_query($sql);
if (!$result) {
echo "Could not successfully run query ($sql) from DB: " . mysql_error();
exit;
}
if (mysql_num_rows($result) == 0) {
echo "No rows found, nothing to print so am exiting";
exit;
}
// До тех пор, пока в результате содержатся ряды, помещаем их в
// ассоциативный массив.
// Заметка: если запрос возвращает только один ряд -- нет нужды в цикле.
// Заметка: если вы добавите extract($row); в начало цикла, вы сделаете
// доступными переменные $userid, $fullname, $userstatus.
while ($row = mysql_fetch_assoc($result)) {
echo $row["userid"];
echo $row["fullname"];
echo $row["userstatus"];
}
mysql_free_result($result);
?>
]]>
</programlisting>
</example>
</para>
<para>
См. также
<function>mysql_fetch_row</function>,
<function>mysql_fetch_array</function>,
<function>mysql_query</function> и
<function>mysql_error</function>.
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->