m_Orchestrate learning system---十四、数据表中字段命名规则

m_Orchestrate learning system---十四、数据表中字段命名规则

一、总结

一句话总结:a、保证唯一

b、见名知意

 

1、注意php中的数组类函数和字符串类函数的前缀?

数组类函数的前缀是 array_,而不是arr_,例如 array_merge()函数,

字符串类函数的前缀是str_,而不是string_,例如str_replace()函数

原因应该是string太长了,不便于做前缀,而array的话刚好可以做前缀,故不用缩写

 

2、str_replace()函数如何使用?

str_replace()函数有点意识,前两个参数都可以是数组

说明整个php函数体系对数组的支持还是比较好的

 1 <?php
 2 // 替换顺序
 3 $str = "Line 1\nLine 2\rLine 3\r\nLine 4\n";  4 $order = array("\r\n", "\n", "\r");  5 $replace = '<br />';  6  7 // 首先替换 \r\n 字符,因此它们不会被两次转换  8 $newstr = str_replace($order, $replace, $str);  9 10 // 输出 F ,因为 A 被 B 替换,B 又被 C 替换,以此类推... 11 // 由于从左到右依次替换,最终 E 被 F 替换 12 $search = array('A', 'B', 'C', 'D', 'E'); 13 $replace = array('B', 'C', 'D', 'E', 'F'); 14 $subject = 'A'; 15 echo str_replace($search, $replace, $subject); 16 17 // 输出: apearpearle pear 18 // 由于上面提到的原因 19 $letters = array('a', 'p'); 20 $fruit = array('apple', 'pear'); 21 $text = 'a p'; 22 $output = str_replace($letters, $fruit, $text); 23 echo $output; 24 ?>

1、str_replace()的常用参数:

如果 search 和 replace 为数组,那么 str_replace() 将对 subject 做二者的映射替换。如果 replace 的值的个数少于 search 的个数,多余的替换将使用空字符串来进行。如果 search 是一个数组而 replace 是一个字符串,那么 search 中每个元素的替换将始终使用这个字符串。该转换不会改变大小写。

如果 search 和 replace 都是数组,它们的值将会被依次处理。

search

查找的目标值,也就是 needle。一个数组可以指定多个目标。

replace

search 的替换值。一个数组可以被用来指定多重替换。

subject

执行替换的数组或者字符串。也就是 haystack

如果 subject 是一个数组,替换操作将遍历整个 subject,返回值也将是一个数组。

count

如果被指定,它的值将被设置为替换发生的次数。

2、常用三个参数,顺序依次为:search,replace,subject(全文)

3、subject在最后面,说明php的开发者倾向把函数中的全文放在后面

4、肯定要先找到才能替换,故search肯定在replace前面

 

 

3、thinkphp中where如何使用?

1 Db::table('think_user')
2     ->where('id','>',1)
3     ->where('name','thinkphp') 4 ->select(); 

1、where还是用的键值对的形势,事实上thinkphp里面有太多都是键值对的形势了

2、因为比较有符号的问题,那么符号肯定在键值对中间

3、数字是不用加引号的,其它一律单引号

4、where支持数组,还是那种键值对的形式

 

4、数据表如何命名,数据表中字段如何命名?

数据表中表字段加上表名的一个字母

比如group表,那么所有字段前面都加上一个g,比如gname

这样做在多个表join查询的时候会很方便,不然就是下面的效果

$data=db('group')->alias('g')->join('user u','u.id=g.tid')->field('u.picture as pic1,g.picture,username,g.name,g.id,g.slogan,g.description,g.time,g.tid,g.snumber')->where('tid',$id)->paginate(3);

这样太麻烦和浪费时间了

给表中字段加上表名的一个字母

还能少写很多代码

还能避免很多错误,比如:

总原则,尽量保证每一个东西的唯一性,尽量保证每一个字段的唯一性

 

 

 

二、内容在总结中

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值