mysql查询结果句柄会消耗内存。为了节约内存,在使用完毕后可以手动释放。不过一般情况下不需要这么做,程序结束会自动释放的。
这里的$pageCount变量存在。因为释放mysql句柄$res和$pageCount无关。
以下方法可以释放$pageCount:
unset($pageCount)望采纳,谢谢支持!
通过 mysql_real_query 查询后,调用 mysql_store_result 取得结果,
mysql_num_rows 取得行数,
循环调用 mysql_fetch_row 可以取到每一行记录,假设变量为 row,
每一行记录是一个 char ** 型,取第 0 列则为 row[0], 它是一个 char * 型,要转成目标类型的话,可以使用其他函数,如 atoi, atol, atof 等等。
mysql_free_result 函数用于释放结果集。
至于以上各个函数的用法,你可以在网上再查找具体的函数原型及用法。
mysql_result定义和用法mysql_result()
函数返回结果集中一个字段的值。
mysql_result()
返回
MySQL
结果集中一个单元的内容。字段参数可以是字段的偏移量或者字段名,或者是字段表点字段名(tablename.fieldname)。如果给列起了别名('select
foo
as
bar
from...'),则用别名替代列名。
如果成功,则该函数返回字段值。如果失败,则返回
false。
调用
mysql_result()
不能和其它处理结果集的函数混合调用。
语法
mysql_result(data,row,field)
参数
描述
data
必需。规定要使用的结果标识符。该标识符是
mysql_query()
函数返回的。
row
必需。规定行号。行号从
0
开始。
field
可选。规定获取哪个字段。可以是字段偏移值,字段名或
table.fieldname。
如果该参数未规定,则该函数从指定的行获取第一个字段。
说明
当作用于很大的结果集时,应该考虑使用能够取得整行的函数。这些函数在一次函数调用中返回了多个单元的内容,比
mysql_result()
快得多。
此外请注意,在字段参数中指定数字偏移量比指定字段名或者
tablename.fieldname
要快得多。
例子
<?php
$con
=
mysql_connect("localhost",
"hello",
"321")
if
(!$con)
{
die('Could
not
connect:
'
.
mysql_error())
}
$db_selected
=
mysql_select_db("test_db",
$con)
$sql
=
"SELECT
*
from
Person"
$result
=
mysql_query($sql,$con)
echo
mysql_result($result,0)
mysql_close($con)
?>
输出类似:
Adams
php中mysqli替换mysql_result的官方方法
今天升级了php版本,顺便想把php代码中的mysql连接方式改成mysqli,因为官方自php5.3开始一直推荐mysqli
和
pdo
。不多说了,贴代码
//
错略的使用mysqli替换
if
(!function_exists('mysql_result'))
{
function
mysql_result($result,
$number,
$field=0)
{
mysqli_data_seek($result,
$number)
$row
=
mysqli_fetch_array($result)
return
$row[$field]
}
}
好了,这篇文章就介绍到这了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)