扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
?php$host_name="服务器名"; //服务器名$host_user="用户名"; //连接服务器的用户名$host_pass="服务器的密码"; //连接服务器的密码$db_name="数据库名"; //服务器上的可用数据库$my_conn=mysql_connect($host_name,$host_user,$host_pass); //连接服务器mysql_select_db($db_name,$my_conn); //选择操作的数据库mysql_query("SET NAMES utf-s"); //设置编码$sql="select tel from members where username=1234";$query=mysql_query($sql,$my_conn);while($row=mysql_fetch_array($query)){ echo $row[0];}?
站在用户的角度思考问题,与客户深入沟通,找到凤山网站设计与凤山网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站制作、成都做网站、企业官网、英文网站、手机端网站、网站推广、主机域名、网站空间、企业邮箱。业务覆盖凤山地区。
数据映射模式使您能更好的组织你的应用程序与数据库进行交互。
数据映射模式将对象的属性与存储它们的表字段间的结合密度降低。数据映射模式的本质就是一个类,它映射或是翻译类的属性或是方法到数据库的相应字段,反之亦然。
数据映射的作用(工作)就在于能对双方所呈现出的信息的理解,并能对信息的存取进行控制,如根据存储在数据表中的信息重建新的域对象,或是用域对象的信息来更新或删除数据表中的相关数据。
对于面向对象代码与数据库表和字段间的映射关系的存储有多种实现方式。其中一种可能的方法就通过手工编码将这种映射关系存储在数据映射类中。
另一种可选的方法是用PHP的数组并将其编码为类本身。这个类也能外源获取数据,如INI或是XML文件。
将字段序列化,例如属性name
$ModelObj-name= serialize(Array('name1' = I('post.name1'), 'name2' = I('post.name2'), 'name3' = I('post.name3')));
ThinkPHP的字段映射功能可以让你在表单中隐藏真正的数据表字段,而不用担心放弃自动创建表单对象的功能,假设我们的User表里面有username和email字段,我们需要映射成另外的字段,定义方式如下:
Class
UserModel
extends
Model{
protected
$_map
=
array(
'name'
='username',
//
把表单中name映射到数据表的username字段
'mail'
='email',
//
把表单中的mail映射到数据表的email字段
);
}
这样,在表单里面就可以直接使用name和mail名称作为表单数据提交了。在保存的时候会字段转换成定义的实际数据表字段。字段映射还可以支持对主键的映射。
如果我们需要把数据库中的数据显示在表单中,并且也支持字段映射的话,需要对查询的数据进行一下处理,处理方式是调用Model类的parseFieldsMap方法,例如:
//
实例化User模型
$User
=
M('User');
$data
=
$User-find(3);
这个时候取出的data数据包含的是实际的username和email字段,为了方便便表单输出,我们需要处理成字段映射显示在表单中,就需要使用下面的代码处理:
$data
=
$User-parseFieldsMap($data);
这样一来,data数据中就包含了name和mail字段数据了,而不再有username和email字段数据了。
4
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流