首頁 > php教程 > php手册 > 主體

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

WBOY
發布: 2016-06-13 11:09:21
原創
1331 人瀏覽過

在运用

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>
登入後複製

注意,如果查询字段名是别名,则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>
登入後複製

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>
登入後複製

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>
登入後複製

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


來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門推薦
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!