您所在的位置:首页 / 知识分享

php开发常见问题盘点

2018.12.06

1971

小平



    1、使用MyISAM而不是InnoDB

  MyISAM是默认使用的。但是除非你是建立一个非常简单的数据库或者只是实验性的,那么到大多数时候这个选择是错误的。MyISAM不支持外键的约束,这是保证数据完整性的精华所在啊。另外,MyISAM会在添加或者更新数据的时候将整个表锁住,这在以后的扩展性能上会有很大的问题。

  2、使用PHPmysql方法

  PHP从一开始就提供了MySQL的函数库。很多程序都依赖于mysql_connectmysql_querymysql_fetch_assoc等等。

  3、不过滤用户输入

  应该是:永远别相信用户的输入。用后端的PHP来校验过滤每一条输入的信息,不要相信Javascript

  4、不使用UTF-8

  UTF-8解决了很多国际化的问题。虽然PHP6才能比较完美的解决这个问题,但是也不妨碍你将MySQL的字符集设置为UTF-8

  5、该用SQL的地方使用PHP

  如果你刚接触MySQL,有时候解决问题的时候可能会先考虑使用你熟悉的语言来解决。这样就可能造成一些浪费和性能比较差的情况。比如:计算平均值的时候不适用MySQL原生的AVG()方法,而是用PHP将所有值循环一遍然后累加计算平均值。

  6、不优化查询

  99%PHP性能问题都是数据库造成的,一条糟糕的SQL语句可能让你的整个程序都非常慢。MySQLEXPLAIN statementQuery Profilermany other tools的这些工具可以帮你找出那些调皮的SELECT

  7、使用错误的数据类型

  MySQL提供一系列数字、字符串、时间等的数据类型。如果你想存储日期,那么就是用DATE或者DATETIME类型,使用整形或者字符串会让事情更加复杂。

  8、在SELECT查询中使用*

  不要使用*在表中返回所有的字段,这会非常的慢。你只需要取出你需要的数据字段。如果你需要取出所有的字段,那么可能你的表需要更改了。

  9、索引不足或者过度索引

  一般来说,应该索引出现在SELECT语句中WHERE后面所有的字段。

  10、不备份

  也许不常发生,但是数据库损毁,硬盘坏了、服务停止等等,这些都会对数据造成灾难性的破坏。所以你一定要确保自动备份数据或者保存副本。

 




相关新闻

日常工作,我是这样做竞品分析!

2018.09.28

2901

在产品设计工作中,竞品分析做为重要环节,从前仅以设计师角度来看竞品分析,但经历从设计到产品的职业转换后,我终于学会了与竞品做朋友,以谈恋爱的方式去发掘它独有的魅力和潜能,以及去深入了解他,挖掘它能给我带来的好运。

用一篇文章,帮你看懂网页响应式布局原理

2020.08.24

1039

今天分享一个很多设计师头疼已久的问题,关于网页响应式布局原理和设计方法。文章主要包含三个部分: 响应式页面是什么 响应式布局的规则 响应式的设计流程