博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php 代码改进
阅读量:5789 次
发布时间:2019-06-18

本文共 782 字,大约阅读时间需要 2 分钟。

  1. 数组

$arr[] = 'x'; 代替 array_push($arr, 'x'), 没有函数调用的消耗

  1. 多分支选择

switch case代替多个if else

顺便说一下, 当只有一个正确的输出, 但是中间要排除很多的错误是, 不要用多个if else, 可以这样,会是代码优雅一点

function demo(){    if () return false;    if () return false;    if () return false;    return 'x';}
  1. 面向对象与面向过程的选择

能简化的事情, 尽量简化, 不要事事都想建一个类再来做, 类的实例化的消耗比函数调用更耗内存, 类的实例化要在是分配堆内存, 不是栈内存, 当然这和代码可读性比起来, 都是小事

如果要扩展性, 肯定是需要抽象的, 就面向对象

  1. 尽量使用php自带的函数

不要想到自己实现, php自带的函数都是使用c语言来写的, 你用php写的运行效率能比c高?

要实现这个尽量通读php.net, 知道要实现什么功能在哪里找, 不要盲目,

  1. 关于命名

一定要语义话, 看了laravel 我真觉得这么多年变量函数命名都是假的

  1. 这是php, 不是c/c++

在c中i++只需要一条cpu指令, 所以我一直以为$i++的效率很高, 但是我看到的框架(比如tp)都没用使用$i++, 而是使用$i += 1, 才发现我太年轻了, 在php中$i++需要4条opcodes

  1. 内存泄漏

php中一般不会内存泄漏的(运行完了就退出了, 没有常驻进程), 但我就遇到过同事写的程序, 莫名奇妙的返回空的页面, 但是看代码逻辑好像又没问题, 用xdebug调试才发现, 递归没有出口导致无限调用, 所以是程序就有可能出现内存泄漏

但是也要注意有的php server是常驻进程的,

转载地址:http://suqyx.baihongyu.com/

你可能感兴趣的文章
LeetCode--112--路径总和
查看>>
DeviceIOControl与驱动层 - 缓冲区模式
查看>>
感悟贴2016-05-13
查看>>
vim使用教程
查看>>
JDK在LINUX系统平台下的部署案例与总结
查看>>
跨vlan通信-----单臂路由技术
查看>>
百度编辑器ueditor 光标位置的坐标
查看>>
DEV-C++ 调试方法简明图文教程(转)
查看>>
VS2017+EF+Mysql生成实体数据模型(解决闪退的坑)
查看>>
C++多态、继承的简单分析
查看>>
库克称未来苹果用户可自己决定是否降频 网友:你是在搞笑吗?
查看>>
6倍性能差100TB容量,阿里云POLARDB咋实现?
查看>>
linux 安装 MySQLdb for python
查看>>
Sublime Text 2 技巧
查看>>
使用fscanf()函数从磁盘文件读取格式化数据
查看>>
参加婚礼
查看>>
h5 audio相关手册
查看>>
刚毕业从事java开发需要掌握的技术
查看>>
CSS Custom Properties 自定义属性
查看>>
vim
查看>>