问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

学PHP4和PHP5是一样的吗?

发布网友 发布时间:2022-04-06 01:52

我来回答

2个回答

懂视网 时间:2022-04-06 06:13

php5.3和php5.4的区别:1、php5.4增加了数组的简写形式;2、php5.4增加了Traits;3、自php5.4开始,内置一个轻量级的web服务器;4、php5.4新增了动态访问静态方法的方式。

1、Short Open Tag 自 PHP5.4 起总是可用

(推荐教程:php视频教程)

在这里集中讲一下有关 PHP 起止标签的问题。即:

<?php
// Code...
?>

通常就是上面的形式,除此之外还有一种简写形式:

<? /* Code... */ ?>

还可以把

<?php echo $xxoo;?>

简写成:

<?= $xxoo;?>

这种简写形式被称为 Short Open Tag, 在 PHP5.3 起被默认开启,在 PHP5.4 起总是可用。使用这种简写形式在 HTML 中嵌入 PHP 变量将会非常方便。

对于纯 PHP 文件(如类实现文件), PHP 官方建议顶格写起始标记,同时 省略 结束标记。这样可以确保整个 PHP 文件都是 PHP 代码,没有任何输出,否则当你包含该文件后,设置 Header 和 Cookie 时会遇到一些麻烦

注:Header 和 Cookie 必须在输出任何内容之前被发送。

2、数组简写形式

这是非常方便的一项特征!

// 原来的数组写法
$arr = array("key" => "value", "key2" => "value2");
// 简写形式
$arr = ["key" => "value", "key2" => "value2"];

3、Traits

所谓Traits就是“构件”,是用来替代继承的一种机制。PHP中无法进行多重继承,但一个类可以包含多个Traits.

// Traits不能被单独实例化,只能被类所包含
trait SayWorld
{
 public function sayHello()
 {
 echo 'World!';
 }
}
class MyHelloWorld
{
 // 将SayWorld中的成员包含进来
 use SayWorld;
}
$xxoo = new MyHelloWorld();
// sayHello() 函数是来自 SayWorld 构件的
$xxoo->sayHello();

Traits还有很多神奇的功能,比如包含多个Traits, 解决冲突,修改访问权限,为函数设置别名等等。

4、内置 Web 服务器

PHP从5.4开始内置一个轻量级的Web服务器,不支持并发,定位是用于开发和调试环境。

在开发环境使用它的确非常方便。

php -S localhost:8000

这样就在当前目录建立起了一个Web服务器,你可以通过 http://localhost:8000/ 来访问。
其中localhost是监听的ip,8000是监听的端口,可以自行修改。

很多应用中,都会进行URL重写,所以PHP提供了一个设置路由脚本的功能:

php -S localhost:8000 index.php

这样一来,所有的请求都会由index.php来处理。

你还可以使用 XDebug 来进行断点调试。

5、细节修改

PHP5.4 新增了动态访问静态方法的方式:

$func = "funcXXOO";
A::{$func}();

新增在实例化时访问类成员的特征:

(new MyClass)->xxoo();

新增支持对函数返回数组的成员访问解析(这种写法在之前版本是会报错的):

print func()[0];

热心网友 时间:2022-04-06 03:21

你好,是有区别的。
PHP是一门编程语言,由于这门语言只有一个主要解释器而且没有语言标准,所以该解释器的版本也成了语言的版本。
4和5最大的区别是对象机制的彻底完善,PHP5变成可以支持完全面向对象编程的语言。5.1引入了PDO对象也全面改进数据库访问机制。
现在,4.x,
5.0已经基本淘汰,主流编程应该用5.3.x系列。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
在公交车上实施扒窃,会受到怎样的处罚? 交通违法行为识别 公交车扒窃会如何处罚? 郑州鱼缸清洗找哪家公司做得比较好? 郑州有没有专业维修鱼缸,清洗鱼缸的? ...的鱼缸,放在办公室养些鱼水草之类的。郑州哪里有卖这样的鱼缸。_百... 我们公司想要定做个观赏鱼缸,不知道郑州哪家公司最专业? 谁知道郑州生态鱼缸定做哪家做的效果最好? 联想电脑启用无线功能的功能键? 笔记本电脑怎么连接网笔记本电脑怎样连接无线网 PHP 5.4 or PHP5.3 选择? PHP 版本5.1.6和版本5.4.14 有哪些功能上的区别 php不同版本区别大吗? 空间提供商 php5.2/5.3/5.4 什么意思 php的几个版本的区别 php中单引号和双引号的区别,哪个速度更快?为什么? php编程的双引号和单引号是什么区别呢? 单引号、双引号在PHP中有什么区别? php中既然可以直接用类名调用类中的方法和属性,那还声明对象干嘛? 这不是多此一举吗? php自动加载实现加载不同文件夹相同类名问题 PHP同一个类方法调用? 关于php的类名 PHP大小写问题:函数名和类名不区分,变量名区分 thinkphp同一命名空间中得类名可以相同吗 php 建两个相同类名的类使用不同的命名空间不能建立? PHP中不同文件夹使用相同的命名空间,相互之间应该如何调用呢?能不能举例说明一下。 类方法和PHP内置函数同名会有什么问题? - 技术问答 PHP中类名与方法名一样是何意,与function __construct()如何区分 thinkphp5中php类名与方法名相同,是怎样做到不报错的 php类文件中,类文件名和方法名要一样吗 php版本越新越好吗 php4与php5区别具体有哪些? 如何选择不同的PHP版本 php 5.3 跟 5.2 有哪些差别 php5.3与5.3以下版本的区别 PHP5.5 和PHP5.6的区别 如何把php5.3版本升级到php5.4或者php5.5 php5.2和php5.3哪个好 现在要升级php5.4已上的版本,怎么升级 PHP5.3与5.5废弃与过期函数有哪些 xdebug 各版本有什么区别 php数组如何转换为js数组? 举例如下: php数组转js数组 PHP数组中的值如何传递给JS数组中? - 技术问答 php二维数组转为js二维数组? 如何将PHP数组的数据插入到javascript数组中 如何将php数组或者对象传递给javascript thinkphp php数组 转换 Js数组[] php数组传到js数组问题 如何用php传递数组给js脚本