辛星浅谈PHP的混乱的编码风格
我们都知道。各种编程语言都有自己的风格,即使是像C和C++那样一脉相承的语言(C++本意全然兼容C的语法)。编程风格上还是有些区别。比方非常典型的就是C++风格的单行凝视和C风格的多行凝视。
而尽管Java在非常大程度上借鉴了C的语法。可是不可否认,Java的经典的大括号是左大括号是在类名或者函数名等同一行的,而C++风格的则是大括号另起一行,可能有些Java程序猿和C++程序猿这两种风格都用,可是假设大家多看看大师的编码风格。会发现事实上大括号另起一行是典型的C++的风格。大括号不另起一行是典型的Java风格,尽管这些并无本质差别。可是就像现代人喜欢握手。古代人喜欢抱拳。这些习惯还是非常的根深蒂固的。是扎根在人的心里的。
以下不得不说的就是PHP的编程风格,我想非常多人都是学习了不少的编程语言了,对于编码风格也有自己的见解。没错。PHP的编程风格就是如此的混乱,首先PHP由C语言写成。非常多函数直接借鉴了C的风格。比方大括号。分号结尾。这也是好事,毕竟C程序猿是灰常的多,适合他们的学习也非常重要。
然后PHP借鉴了不少Perl的风格。最经典的就是这个$符号。至少就我看来。除了perl和php。我还真没发现哪个语言喜欢在变量名前面加上这么一个符号。接下来就是它的凝视风格。典型的Shell、C、C++三种风格都支持。这点还是非常不错的,谈不上混乱。至少非常经典。
然后不得不说的就是PHP的函数名的编码风格。一个字:乱。假设这个函数是位于类里面的,那么我们要考虑驼峰命名法。比方getName这样子。对于内置函数,它有可能是用下划线连接的。比方error_reporting,比方html_entity_decode,也有可能是直接用字母连接起来的,比方htmlentities,还有可能是某些简写规则。比方rtirm与ltrim这样子。
给PHP的学习和使用带来了一定的迷茫。
最后说一下PHP的面向对象把,PHP的面向对象在非常大程度上是Java风格的。借鉴了Java的单继承和接口的思想。因此,特别适合Java程序猿转向PHP,也非常适合PHP程序猿转向Java。
一时有点想不起来再说点什么了,总之。PHP的编码风格是一个大杂烩。须要程序猿不断地去适应。
辛星浅谈PHP的混乱的编码风格的更多相关文章
- 辛星浅谈mysql中的数据碎片以及引擎为MyISAM下的操作
对于mysql中的数据碎片,事实上和我们删除数据是息息相关的,删除数据的时候必定会在数据文件里造成不连续的空白空间,对于少量的数据的删除,并不会产生多少的空白空间.假设在一段时间内的大量的删除操作,会 ...
- 视频基础知识:浅谈视频会议中H.264编码标准的技术发展
浅谈视频会议中H.264编码标准的技术发展 浅谈视频会议中H.264编码标准的技术发展 数字视频技术广泛应用于通信.计算机.广播电视等领域,带来了会议电视.可视电话及数字电视.媒体存储等一系列应用,促 ...
- 浅谈38K红外发射接受编码
之前做接触过一次红外遥控器,现在有空想用简单的话来聊一聊,下面有错误的地方欢迎改正指出:1:红外的概念不聊,那是一种物理存在.以下聊38K红外发射接收,主要讲可编程的红外编码.2:红外遥控 红外遥控首 ...
- 【转载】浅谈38K红外发射接受编码
转自Doctor_A 坛友的笔记! 之前做接触过一次红外遥控器,现在有空想用简单的话来聊一聊,下面有错误的地方欢迎改正指出: 1:红外的概念不聊,那是一种物理存在.以下聊38K红外发射接收,主要讲可编 ...
- python 浅谈小数据池和编码
⼀. ⼩数据池 在说⼩数据池之前. 我们先看⼀个概念. 什么是代码块: 根据提示我们从官⽅⽂档找到了这样的说法: A Python program is constructed from code b ...
- 浅谈java使用指定字符集编码,以及常见的字符集
问题的引入:在InputStreamReader(OutputStreamWriter)的构造方法中,有指定字符集编码,那么什么是字符集?有哪些常用的字符集?怎么用字符集进行编码? 一 什么是字符 ...
- 浅谈 JavaScript 编程语言的编码规范
对于熟悉 C/C++ 或 Java 语言的工程师来说,JavaScript 显得灵活,简单易懂,对代码的格式的要求也相对松散.很容易学习,并运用到自己的代码中.也正因为这样,JavaScript 的编 ...
- 浅谈Hybrid技术的设计与实现第三弹——落地篇
前言 接上文:(阅读本文前,建议阅读前两篇文章先) 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 根据之前的介绍,大家对前端与Native的交互应该有一些简单的认识了,很多 ...
- 浅谈Hybrid技术的设计与实现第二弹
前言 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 浅谈Hybrid技术的设计与实现第三弹——落地篇 接上文:浅谈Hybrid技术的设计与实现(阅读本文前,建议阅读这个先) ...
随机推荐
- NFC(13)使用Android Beam技术传输文件
注意 Android Beam技术传输文件时nfc只负责连接两个手机,而传输文件实际是用蓝牙模块.且目前接收文件功能只是系统完成,不用自写个接收程序. 传输文件相关的重要api 从Android4.1 ...
- C#如何在派生类中不显示父类的一些属性以及TypeDescriptor使用
public SonClass:FatherClass { 定义属性 .... } Type thisType = typeof(SonClass);方法一: PropertyInfo[] pis = ...
- 1521. War Games 2(线段树解约瑟夫)
1521 根据区间和 来确定第k个数在哪 #include <iostream> #include<cstdio> #include<cstring> #inclu ...
- Hibernate中的query.setFirstResult(),query.setMaxResults();
一.query.scroll()和query.setFirstResult(),query.setMaxResults();这两种方法都可以取到一定范围内的数据,用来数据分页显示.那么两者区别,以及两 ...
- python20151125
python exit() python test.py 输入输出 print('2\n2') print(1, 2, 3) name = input() print(':', name) 数据类型和 ...
- apache开源项目--ZooKeeper
ZooKeeper是Hadoop的正式子项目,它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护.名字服务.分布式同步.组服务等.ZooKeeper的目标就是封装好复杂易出错的关键服务 ...
- ORACLE参数文件
一.oracle pfile/spfile区别 pfile 默认的名称为“init+例程名.ora”文件路径:E:\oracle\product\10.2.0\db_1\dbs,这是一个文本文件 ...
- BingWallpaper
桌面壁纸更换成Bing.com的每日图片 项目地址:https://github.com/atskyline/BingWallpaper 其实就只是一个脚本,只是觉得二进制文件使用比较方便,所以采用C ...
- 【转】Cocos2d-x 程序是如何开始运行与结束的
转自:http://blog.leafsoar.com/archives/2013/05-05.html 题记:对于技术,我们大可不必挖得那么深,但一定要具备可以挖得很深的能力 问题的由来 怎么样使用 ...
- delphi 数据导出到word
procedure TFrmWeekAnalysisQry.BtnExportToExcelClick(Sender: TObject);var wordApp,WordDoc,WrdSelectio ...