趣味坎谈,不一定100%准确,以自己的实际情况为准;

如题,我2008年开始学PHP,PHP是我学的第二门编程语言,一直用到现在,2010年初开始做iOS开发,学习了Objective-C,学这2门语言之间间隔了2年;

最近翻到了2008~2010年之间自己写的PHP代码,结合现在的项目编码风格,总结变化如下:;

1.现在喜欢用又臭又长的类名,方法名,参数名,只要写的不够长,怎么都要想办法补充到很长,所以现在写PHP就非常依赖能自动补全的IDE(被xcode宠坏了),因为真的很长;

以前用php写一个方法是这样的;

 function checkpass($name,$pass){
//...
}

现在是这么写的;

 class UserModel {
public function checkIfPasswordIsRightWithUsername($username,$password){
//...
}
}

2.只喜欢用驼峰法,不喜欢用  _ ;

以前这么写;

 $user_token = $user_model->get_user_access_token();

现在这么写;

 $userAccessToken = $userModel::getInstance()->getUserTokenForAccessAtMasterDatabaseWithCache($cacheConfigure);

3.开始项目前先定义好一堆又臭又长实际没啥用的常量(跟OC学的);

以下摘录某项目一部分;

 <?php
/**
* 全局配置宏
* @author: Legend_Yin<admin@cmcc.in>
*/ //调试相关配置
define("APP_HTTP_PARAMETER_SIGN_CHECK",true);
define("APP_PARAMETER_TIME_CHECK", false);
define("APP_PARAMETER_REQUEST_ID_CHECK", true); define("MEMCACHE_KEY_PREFIX_ACCESS_TOKEN_KEY", "access_token_key_"); define('MEMCACHE_KEY_PREFIX_SYSTEM_SETTINGS', 'system_settings_'); define("MEMCACHE_KEY_LIFETIME_ACCESS_TOKEN_KEY", 7200);
define('MEMCACHE_KEY_LIFETIME_SYSTEM_SETTINGS', 3600*12); define('COMMON_PARAMETER_USER_TOKEN', 'user_token');
define('COMMON_PARAMETER_TIME', 'time');
define('COMMON_PARAMETER_VERSION', 'version');
define('COMMON_PARAMETER_REQUEST_ID', 'request_id');

4. 喜欢把PHP里的 __construct 包装成 $someObj->alloc()->init();

5. 把PHP中的Array不自觉区分为 2种;

如下

 <?php

 $userArray = array("tom","jerry","jack");

 $userDictionary = array("first"=>"tom","second"=>"jerry","third"=>"jack");

6.先写这么多,想到再补充

PHP程序员学Objective-C之后的变化的更多相关文章

  1. .Net程序员学用Oracle系列(1):导航目录

    本人从事基于 Oracle 的 .Net 企业级开发近三年,在此之前学习和使用的都是 (MS)SQL Server.未曾系统的了解过 Oracle,所以长时间感到各种不习惯.不方便.怪异和不解,常会遇 ...

  2. .Net程序员学用Oracle系列(2):准备测试环境

    <.Net程序员学用Oracle系列:导航目录> 本文大纲 1.创建说明 1.1.为什么要创建的测试环境? 1.2.了解 Oracle 实例的默认用户 2.创建环境 2.1.创建基本环境 ...

  3. .Net程序员学用Oracle系列(6):表、字段、注释、约束、索引

    <.Net程序员学用Oracle系列:导航目录> 本文大纲 1.表 1.1.创建表 1.2.修改表 & 删除表 2.字段 2.1.添加字段 2.2.修改字段 & 删除字段 ...

  4. .Net程序员学用Oracle系列(7):视图、函数、过程、包

    <.Net程序员学用Oracle系列:导航目录> 本文大纲 1.视图 1.1.创建视图 2.函数 2.1.创建函数 2.2.调用函数 3.过程 3.1.创建过程 3.2.调用过程 4.包 ...

  5. .Net程序员学用Oracle系列(8):触发器、任务、序列、连接

    <.Net程序员学用Oracle系列:导航目录> 本文大纲 1.触发器 1.1.创建触发器 1.2.禁用触发器 & 启用触发器 & 删除触发器 2.任务 2.1.DBMS_ ...

  6. .Net程序员学用Oracle系列(9):系统函数(上)

    <.Net程序员学用Oracle系列:导航目录> 本文大纲 1.字符函数 1.1.字符函数简介 1.2.语法说明及案例 2.数字函数 2.1.数字函数简介 2.2.语法说明及案例 3.日期 ...

  7. .Net程序员学用Oracle系列(10):系统函数(下)

    <.Net程序员学用Oracle系列:导航目录> 本文大纲 1.转换函数 1.1.TO_CHAR 1.2.TO_NUMBER 1.3.TO_DATE 1.4.CAST 2.近似值函数 2. ...

  8. .Net程序员学用Oracle系列(11):系统函数(下)

    1.聚合函数 1.1.COUNT 函数 1.2.SUM 函数 1.3.MAX 函数 1.4.MIN 函数 1.5.AVG 函数 2.ROWNUM 函数 2.1.ROWNUM 函数简介 2.2.利用 R ...

  9. .Net程序员学用Oracle系列(15):DUAL、ROWID、NULL

    1.DUAL 表 2.ROWID 类型 2.1.利用 ROWID 查询数据 2.2.利用 ROWID 更新数据 3.NULL 值 3.1.NULL 与空字符串 3.2.NULL 与函数 3.3.NUL ...

  10. .Net程序员学用Oracle系列(25):触发器详解

    1.触发器理论 1.1.触发器的应用场景 1.2.触发器的类型 1.3.DML 触发器的触发顺序 2.触发器实战 2.1.创建触发器 2.1.1.创建 DML 触发器 2.1.2.创建 DDL 触发器 ...

随机推荐

  1. 为什么使用.Net Core, Asp.net Core以及部署到云端

    一,基于微软技术平台开发的应用项目,如果有以下的需求和潜在需求,建议使用.Net Core和Asp.net core技术架构: 1. 跨平台支持 2. 采用微服务架构 3. 使用Docker容器 4. ...

  2. 用ISA2006配置单网卡缓存服务器

    有些公司在部署ISA服务器之前已经有了自己的网络访问解决方案,例如通过硬件防火墙访问互联网,如果这种网络访问解决方案运行效果较好,公司就未必希望用ISA来替代当前的方案,毕竟稳定是第一位的.但在这种情 ...

  3. Effective C++(20) 继承与面向对象设计

    本文主要参考<Effective C++ 3rd>中的第六章部分章节的内容. 关注的问题集中在继承.派生.virtual函数等.如: virtual? non-virtual? pure ...

  4. MQ环境的搭建

    MQ环境的搭建

  5. Power shell 复制文件到远程主机

    昨天因为要复制文件到多个服务器上,感觉一个个复制很麻烦,我就想用Power shell 命令来完成这个任务.具体代码如下: $servers= 'server1' ,'server2' $userna ...

  6. css属性之flex属性

    flex属性 规定了弹性元素如何伸长或缩短以适应flex容器中的可用空间.是一个简写属性,可以同时设置flex-grow, flex-shrink, flex-basis三个子属性. /* Basic ...

  7. 基于HP DL388 Gen 9服务器基本配置(ESXI 6.5)

    最近一段时间由于做毕业设计的原因,一直处于忙碌状态,刚做完毕业设计,导师处于项目的原因,买了一台惠普服务器(人民币1.7万),服务器自带的内存仅有16 G,硬盘也就只有600G,而且磁盘还做了raid ...

  8. css注入获取网页中的数据

    <style><?php echo htmlspecialchars($_GET['x']);?></style> <br><br>< ...

  9. springmvc与Structs2本质区别

    1.前端控制器不同:structs2入口是一个filter过滤器,springmvc入口是一个servlet. 2.设计思想不同: struts2通过在action类中定义成员变量接收请求参数,str ...

  10. ethereumjs/ethereumjs-vm-2-API文档

    https://github.com/ethereumjs/ethereumjs-vm/blob/master/docs/index.md vm.runBlockchain Processes blo ...