这两个函数功能完全不同:
创新互联公司是专业的温岭网站建设公司,温岭接单;提供成都网站建设、成都做网站,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行温岭网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
mysql_affected_rows 取得前一次 MySQL 操作所影响的记录行数,操作是指INSERT、UPDATE、DELETE等,影响是指修改、变化的。如果函数失败,返回值是-1。此函数参数为连接ID,也可以不要参数(当前默认的连接)。
mysql_num_rows()返回结果集中行的数目,仅对 SELECT 语句有效。注意其参数是mysql_query返回的结果集ID。
首先是数据库方面的函数,例如:mysql_connect,mysql_create_db,mysql_fetch_array,mysql_select_db,mysql_query,数据库的函数众多,最好写成一个类,可以参考discuz,phpcms等,如果是php5,可以使用PDO php的数组很强大,很多地方要用到最好把关于数组的循环,分割,删除等记住,例如:is_array,implode,explode,array_keys,array_merge等 还有就是记牢一些安全性的函数例如:addslashes,htmlspecialchars等 其他还有字符处理:subtr,strlen,trim等 初学者要尽量使用专业的编辑器,例如:UE,editplus等,有利于拼写和记忆函数,少用IDE工具,例如zendstudio等,这些虽然方便,但是不利于记忆函数,加入没有了IDE的情况下,就成了盲人了,虽有思路,但写不出代码来。
8.4.4 Model类
getModelName() 获取当前Model的名称
getTableName() 获取当前Model的数据表名称
switchModel(type,vars=array()) 动态切换模型
table() 设置当前操作的数据表
field() 设置要查询的数据字段
where() 设置查询或者操作条件
data(data) 设置数据对象
order(order) 设置排序
limit(limit) 查询限制
page(page) 查询分页
join(join) 进行JOIN查询
having(having) 进行having查询
group(group) 进行group查询
lock(lock) 查询锁定
distinct(distinct) 唯一性查询
count(field) 记录统计
sum(field) 总数查询
min(field) 最小值查询
max(field) 最大值查询
avg(field) 平均值查询
_initialize() 模型初始化方法
_facade(data) 对保存到数据库的数据进行处理
_before_write(data) 写入数据前的回调方法 包括新增和更新
add(data='',options=array()) 新增数据
_before_insert(data,options) 写入数据前的回调方法
_after_insert(data,options) 写入数据后的回调方法
selectAdd(fields='',table='',options=array()) 通过Select方式添加记录
save(data='',options=array()) 更新数据到数据库
_before_update(data,options) 更新数据前的回调方法
_after_update(data,options) 更新成功后的回调方法
delete(options=array()) 删除数据
_after_delete(data,options) 删除成功后的回调方法
select(options=array()) 查询数据集
_after_select(resultSet,options) 查询成功后的回调方法
findAll(options=array()) select方法的别名
_options_filter(options) 表达式过滤回调方法
find(options=array()) 查询数据
_after_find(result,options) 查询成功的回调方法
setField(field,value,condition='') 设置记录的某个字段值
setInc(field,condition='',step=1) 字段值增长
setDec(field,condition='',step=1) 字段值减少
getField(field,condition='',sepa=' ') 获取某个字段值
create(data='',type='') 创建数据对象
autoCheckToken(data) 表单令牌验证
query(sql) 执行原生SQL查询
execute(sql='') 执行原生SQL操作
startTrans() 启动事务
commit() 提交事务
rollback() 事务回滚
getError() 获取模型的错误信息
getDbError() 获取数据库的错误信息
getLastInsID() 获取最后执行的SQL语句
getPk() 获取主键名称
getDbFields() 获取数据表的字段信息
regex(value,rule) 使用正则验证数据
setProperty(name,value) 设置模型的属性值
2.1版新增方法:
db(linkNum,config='') 切换当前数据库连接
高级模型类AdvModel
topN(count,options=array()) 查询满足条件的前N个记录
getN(position=0,options=array()) 查询符合条件的第N条记录
0 表示第一条记录 -1 表示最后一条记录
first(options=array()) 获取满足条件的第一条记录
last(options=array()) 获取满足条件的最后一条记录
returnResult(data,type='') 返回指定的数据类型
setLazyInc(field,condition='',step=1,lazyTime=0) 字段值延迟增长
setLazyDec(field,condition='',step=1,lazyTime=0) 字段值延迟减少
addConnect(config,linkNum=NULL) 增加数据库连接
delConnect(linkNum) 删除数据库连接
closeConnect(linkNum) 关闭数据库连接
switchConnect(linkNum,name='') 切换数据库连接
patchQuery(sql=array()) 批处理执行SQL语句
getPartitionTableName(data=array()) 得到分表的的数据表名
PHP常用操作数组的函数
变量和数组的转换
compact() 将变量整合成数组
extract() 将数组中的每个值以键的名分解成变量
变量和字符串转换
explode() 以某个子串分解字符串成数组
implode() 将一维数组根据某个符号拼接成字符串
数组与数组之间关系
array_merge() 合并/并集
array_diff() 差集
array_intersect() 交集
数组值的操作
array_pop() 删除(弹出)数组最后一个值
array_push() 向数组中追加一个值
判断数组是否存在数组中
in_array() 判断一个值是否存在数组中
array_key_exists() 判断键是否存在数组中
数组去重
array_unique() 数组去重
获取二维数组中的值的集合
array_column() 获取二维数组中的值的集合
提取数组的键与值
array_values 提取数组的值构成一维数组
array_keys 提取数组的键构成一维数组
返回数组中的随机的键
array_rand() 返回数组中的随机的键
返回数组中值的数量
count() 返回数组中值的和
查询数组中的值
array_search() 查询数组中的值是否存在/in_array()有点相似
排序
sort() 排序有很多种,按键或值升降序
array_multisort() 多维数组排序
分割数组
array_chunk()
1、PHP获取显示数据库数据函数之 mysql_result()
mixed mysql_result(resource result_set, int row [,mixed field])
从result_set 的指定row 中获取一个field 的数据. 简单但是效率低.
举例:
$link1 = @mysql_connect("server1",
"webuser", "password")
or die("Could not connect
to mysql server!");
@mysql_select_db("company")
or die("Could not select database!");
$query = "select id, name
from product order by name";
$result = mysql_query($query);
$id = mysql_result($result, 0, "id");
$name = mysql_result($result, 0, "name");
mysql_close();
注意,上述代码只是输出结果集中的第一条数据的字段值,如果要输出所有记录,需要循环处理.
for ($i = 0; $i = mysql_num_rows($result); $i++)
{
$id = mysql_result($result, 0, "id");
$name = mysql_result($result, 0, "name");
echo "Product: $name ($id)";
}
注意,如果查询字段名是别名,则mysql_result中就使用别名.
2、PHP获取显示数据库数据函数之mysql_fetch_row()
array mysql_fetch_row(resource result_set)
从result_set中获取整行,把数据放入数组中.
举例(注意和list 的巧妙配合):
$query = "select id,
name from product order by name";
$result = mysql_query($query);
while(list($id, $name)
= mysql_fetch_row($result)) {
echo "Product: $name ($id)";
}
3、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:获取两种数组.因此每个字段可以按索引偏移引用,也可以按字段名引用.
举例:
$query = "select id,
name from product order by name";
$result = mysql_query($query);
while($row = mysql_fetch_array
($result, MYSQL_BOTH)) {
$name = $row['name'];
//或者 $name = $row[1];
$name = $row['id'];
//或者 $name = $row[0];
echo "Product: $name ($id)";
}
4、PHP获取显示数据库数据函数之mysql_fetch_assoc()
array mysql_fetch_assoc(resource result_set)
相当于 mysql_fetch_array($result, MYSQL_ASSOC)
5、PHP获取显示数据库数据函数之mysql_fetch_object()
object mysql_fetch_object(resource result_set)
和mysql_fetch_array()功能一样,不过返回的不是数组,而是一个对象.
举例:
$query = "select id, name
from product order by name";
$result = mysql_query($query);
while($row = mysql_fetch_object
($result)) {
$name = $row-name;
$name = $row-id;
echo "Product: $name ($id)";
}
以上这些函数就是PHP获取显示数据库数据函数的全部总结。