使用mysql_fetch_array()获取当前行数据
同mysql_fetch_row()類似,函數mysql_fetch_array()也是獲取結果集中當前行數據,并在調用后自動滑向下一行。其定義如下。
| array mysql_fetch_array(int result, int [result_type]) |
參數說明如下。
(1)result:由函數mysql_query()或mysql_db_query()返回的結果標識,用來指定所要獲取的數據的SQL語句類型。
(2)result_type:用于指定結果集類型,可選,取值范圍為PHP常量集合{MYSQL_ASSOC, MYSQL_NUM, MYSQL_BOTH}。
函數返回值如下。
成功:一個數組,該數組包含了查詢結果集中當前行數據信息,數組下標范圍0~記錄屬性數?1,數組中的第i個元素值為該記錄第i個屬性上的值。同時可以使用屬性名來得到該屬性上的值。
失敗:false。
下面示例使用mysql_fetch_array()得到Computers數據表中價格不小于20的圖書信息。
| 1??? <!----使用mysql_fetch_array()來獲取數據:mysql_fetch_array.php----> 2??????? <?php 3??????? //連接并選擇到數據庫服務器 4??????? $connection = mysql_connect ("localhost", "root", "password"); 5??????? mysql_select_db("Books", $connection); 6??????? //查詢數據 7??????? $query="SELECT * FROM Computers "; 8??????? $query.="WHERE price >= 20"; 9??????? //echo $query."<br>"; 10?????? $result=mysql_query($query,$connection); 11?????? //mysql_fetch_array()獲得數據,并輸出 12?????? while($row=mysql_fetch_array($result)) 13?????? { 14??????????? echo "書名:??? ".$row[1]."<br>"; 15??????????? echo "價格:??? ".$row["price"]."<br>"; 16??????????? echo "出版日期:??? ".$row["publish_date"]."<br>"; 17??????????? echo "<br>"; 18?????? } 19?? ?> |
示例在第12行使用mysql_fetch_array()獲取當前行數據,然后在第12~18行的循環中分別使用屬性索引和屬性名獲取這一行某屬性上的值。從中不難看出,mysql_fetch_array()與mysql_fetch_row()的區別在于,前者返回數組中保存了結果集的兩個備份,一個可以通過屬性索引訪問,另一個則可以通過屬性名訪問。
注意
當通過屬性名訪問屬性上的值時,如果有幾個屬性的名相同,則索引在后的屬性會把在前的屬性值覆蓋掉。因此,在使用屬性名獲得數據時,要避免查詢結果集中屬性重名。
示例運行的結果如下。
| 書名: 數據結構 價格: 20 出版日期: 2001-01-01書名: C語言 價格: 23 出版日期: 1998-04-04書名: PHP入門技術 價格: 22 出版日期: 2005-05-01 |
轉載于:https://www.cnblogs.com/qiantuwuliang/archive/2010/03/05/1679174.html
總結
以上是生活随笔為你收集整理的使用mysql_fetch_array()获取当前行数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 什么是 CAT?
- 下一篇: Linux Kickstart无人值守安