php是什么型语言
PHP写的网站占所有网站的大概 80%了。那么你知道php是什么型语言了吗?PHP 是一门弱类型语言,跟本站小编一起来学习一下吧~
PHP 是一门弱类型语言
我们注意到,不必向 PHP 声明该变量的数据类型。
PHP 会根据变量的值,自动把变量转换为正确的数据类型。
在强类型的编程语言中,我们必须在使用变量前先声明(定义)变量的类型和名称。
1. 先定义一些基础概念
Program Errors
trapped errors。导致程序终止执行,如除0,Java中数组越界访问
untrapped errors。 出错后继续执行,但可能出现任意行为。如C里的缓冲区溢出、Jump到错误地址
Forbidden Behaviours
语言设计时,可以定义一组forbidden behaviors. 它必须包括所有untrapped errors, 但可能包含trapped errors.
Well behaved、ill behaved
well behaved: 如果程序执行不可能出现forbidden behaviors, 则为well behaved。
ill behaved: 否则为ill behaved...
2. 有了上面的'概念,再讨论强、弱类型,静态、动态类型
强、弱类型
强类型strongly typed: 如果一种语言的所有程序都是well behaved——即不可能出现forbidden behaviors,则该语言为strongly typed。
弱类型weakly typed: 否则为weakly typed。比如C语言的缓冲区溢出,属于trapped errors,即属于forbidden behaviors..故C是弱类型
前面的人也说了,弱类型语言,类型检查更不严格,如偏向于容忍隐式类型转换。譬如说C语言的int可以变成double。 这样的结果是:容易产生forbidden behaviours,所以是弱类型的
动态、静态类型
静态类型 statically: 如果在编译时拒绝ill behaved程序,则是statically typed;
动态类型dynamiclly: 如果在运行时拒绝ill behaviors, 则是dynamiclly typed。
3. 误区
大家觉得C语言要写int a, int b之类的,Python不用写(可以直接写a, b),所以C是静态,Python是动态。这么理解是不够准确的。譬如Ocaml是静态类型的,但是也可以不用明确地写出来。。
Ocaml是静态隐式类型
静态类型可以分为两种:
如果类型是语言语法的一部分,在是explicitly typed显式类型;
如果类型通过编译时推导,是implicity typed隐式类型, 比如ML和Haskell
4.下面是些例子
无类型: 汇编
弱类型、静态类型 : C/C++
弱类型、动态类型检查: Perl/PHP
强类型、静态类型检查 :Java/C#
强类型、动态类型检查 :Python, Scheme
静态显式类型 :Java/C
静态隐式类型 :Ocaml, Haskell
-
ppt嵌入网页视频的方法
随着多媒体技术逐渐发展提高,在线展示视频、音频、PPT、图表等技术也越来越多地应用到了各行各业中。下面是本站小编整理的ppt嵌入网页视频的方法,希望对你有帮助!1、在PPT编辑页面,点击插入标题栏2、这时会打开插入菜单,在工具栏上找到我的加载项并点击进入3、这...
-
细说2016双十一店铺应急预案
双十一前期要做好应急预案,以防突发事件的发生。那么双十一应急预案该怎么做呢,以下是本站小编为你提供的双十一应急预案,欢迎阅读。想了解更多相关资讯请持续关注我们应届毕业生培训网。1、电脑问题主要是电脑卡机、死机、系统崩溃,建议提前把重要文件备份到U盘,通...
-
下一代网络运维管理技术的发展趋势
作为企业运营管理的主要组成机体,电信运维管理具有复杂性、独立性、关联性、动态性的特点。通过对电信运营过程的分析以及长时间实践经验的总结,人们对电信运维管理工作的认识也在不断深入。电信运维能力要从电信运营的宏观角度分析。电信运维与运营的关系体现在...
-
电脑主机如何维护和保养
电脑已经成为现代人生活,工作中必不可少的设备,现在买台好点的电脑,价格也不低,如何维护保养好电脑,延长使用寿命,降低故障发生的频率是非常重要的。步骤1不要频繁开关机有些人总因为小问题就动不动关机重启,这样的习惯很不好,这样会极大损伤电脑硬件。如果短时间不用...