Home > php教程 > php手册 > 如何正确理解PHP获取显示数据库数据函数

如何正确理解PHP获取显示数据库数据函数

WBOY
Release: 2016-06-13 11:09:21
Original
1358 people have browsed it

在运用

PHP获取显示数据库数据函数之 mysql_result()

mixed mysql_result(resource result_set, int row [,mixed field])
从result_set 的指定row 中获取一个field 的数据. 简单但是效率低.

举例:

  1. $link1 = @mysql_connect("server1", 
    "webuser", "password")   
  2. or die("Could not connect 
    to mysql server!");  
  3. @mysql_select_db("company") 
    or die("Could not select database!");  
  4. $query = "select id, name 
    from product order by name"
    ;   
  5. $result = mysql_query($query);  
  6. $id = mysql_result($result, 0, "id");  
  7. $name = mysql_result($result, 0, "name");  
  8. mysql_close();  

注意,上述代码只是输出结果集中的第一条数据的字段值,如果要输出所有记录,需要循环处理.

<ol class="dp-xml">
<li class="alt"><span><span>for ($</span><span class="attribute">i</span><span> = </span><span class="attribute-value">0</span><span>; $i </span><span class="tag"><span>= mysql_num_rows($result); $i++)  </span></span></span></li>
<li><span>{  </span></li>
<li class="alt">
<span>$</span><span class="attribute">id</span><span> = </span><span class="attribute-value">mysql_result</span><span>($result, 0, "id");  </span>
</li>
<li>
<span>$</span><span class="attribute">name</span><span> = </span><span class="attribute-value">mysql_result</span><span>($result, 0, "name");  </span>
</li>
<li class="alt"><span>echo "Product: $name ($id)";  </span></li>
<li><span>} </span></li>
</ol>
Copy after login

注意,如果查询字段名是别名,则mysql_result中就使用别名.

PHP获取显示数据库数据函数之mysql_fetch_row()

array mysql_fetch_row(resource result_set)
从result_set中获取整行,把数据放入数组中.
举例(注意和list 的巧妙配合):
 

<ol class="dp-xml">
<li class="alt"><span><span>$</span><span class="attribute">query</span><span> = </span><span class="attribute-value">"select id, <br>name from product order by name"</span><span>;   </span></span></li>
<li>
<span>$</span><span class="attribute">result</span><span> = </span><span class="attribute-value">mysql_query</span><span>($query);  </span>
</li>
<li class="alt"><span>while(list($id, $name) <br>= mysql_fetch_row($result)) {  </span></li>
<li><span>echo "Product: $name ($id)";  </span></li>
<li class="alt"><span>} </span></li>
</ol>
Copy after login

PHP获取显示数据库数据函数之mysql_fetch_array()

array mysql_fetch_array(resource result_set [,int result_type])
mysql_fetch_row()的增强版.
将result_set的每一行获取为一个关联数组或/和数值索引数组.
默认获取两种数组,result_type可以设置:
MYSQL_ASSOC:返回关联数组,字段名=>字段值
MYSQL_NUM:返回数值索引数组.
MYSQL_BOTH:获取两种数组.因此每个字段可以按索引偏移引用,也可以按字段名引用.

举例:
 

<ol class="dp-xml">
<li class="alt"><span><span>$</span><span class="attribute">query</span><span> = </span><span class="attribute-value">"select id,<br> name from product order by name"</span><span>;  </span></span></li>
<li>
<span>$</span><span class="attribute">result</span><span> = </span><span class="attribute-value">mysql_query</span><span>($query);  </span>
</li>
<li class="alt">
<span>while($</span><span class="attribute">row</span><span> = </span><span class="attribute-value">mysql_fetch_array<br></span><span>($result, MYSQL_BOTH)) {   </span>
</li>
<li>
<span>$</span><span class="attribute">name</span><span> = $row['name'];</span>
</li>
<li>
<span>//或者 $</span><span class="attribute">name</span><span> = $row[1];  </span>
</li>
<li class="alt">
<span>$</span><span class="attribute">name</span><span> = $row['id'];</span>
</li>
<li class="alt">
<span>//或者 $</span><span class="attribute">name</span><span> = $row[0];  </span>
</li>
<li><span>echo "Product: $name ($id)";  </span></li>
<li class="alt"><span>} </span></li>
</ol>
Copy after login

PHP获取显示数据库数据函数之mysql_fetch_assoc()

array mysql_fetch_assoc(resource result_set)
相当于 mysql_fetch_array($result, MYSQL_ASSOC)

PHP获取显示数据库数据函数之mysql_fetch_object()

object mysql_fetch_object(resource result_set)
和mysql_fetch_array()功能一样,不过返回的不是数组,而是一个对象.
举例:

 

<ol class="dp-xml">
<li class="alt"><span><span>$</span><span class="attribute">query</span><span> = </span><span class="attribute-value">"select id, name <br>from product order by name"</span><span>;  </span></span></li>
<li>
<span>$</span><span class="attribute">result</span><span> = </span><span class="attribute-value">mysql_query</span><span>($query);   </span>
</li>
<li class="alt">
<span>while($</span><span class="attribute">row</span><span> = </span><span class="attribute-value">mysql_fetch_object<br></span><span>($result)) {  </span>
</li>
<li>
<span>$</span><span class="attribute">name</span><span> = $row-</span><span class="tag">></span><span>name;  </span>
</li>
<li class="alt">
<span>$</span><span class="attribute">name</span><span> = $row-</span><span class="tag">></span><span>id;  </span>
</li>
<li><span>echo "Product: $name ($id)";  </span></li>
<li class="alt"><span>} </span></li>
</ol>
Copy after login

以上这些函数就是PHP获取显示数据库数据函数的全部总结。


source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template