PHP关于官方文档的一些问题
以下问题运行在php5.5
小弟刚学PHP没几天
求大神指教
1.官方文档给出的这个实例中declare(strict_type=1);
这个严格声明为何显示为一个不支持的声明...
然后把严格声明去掉后,下面两个int
型的sum(1,2)
也无法传入函数= =
<?php declare(strict_types=1); function sum(int $a, int $b) { return $a + $b; } var_dump(sum(1, 2)); var_dump(sum(1.5, 2.5)); ?>
2.这个实例中,function
后面的: float
是啥子意思?
是不是传进的数return
出来的全变成浮点型?
然后依然执行错误
<?php function sum($a, $b): float { return $a + $b; } // Note that a float will be returned. var_dump(sum(1, 2)); ?>
回复内容:
以下问题运行在php5.5
小弟刚学PHP没几天
求大神指教
1.官方文档给出的这个实例中declare(strict_type=1);
这个严格声明为何显示为一个不支持的声明...
然后把严格声明去掉后,下面两个int
型的sum(1,2)
也无法传入函数= =
<?php declare(strict_types=1); function sum(int $a, int $b) { return $a + $b; } var_dump(sum(1, 2)); var_dump(sum(1.5, 2.5)); ?>
2.这个实例中,function
后面的: float
是啥子意思?
是不是传进的数return
出来的全变成浮点型?
然后依然执行错误
<?php function sum($a, $b): float { return $a + $b; } // Note that a float will be returned. var_dump(sum(1, 2)); ?>
function后面的: float指的是该函数返回值的类型。
强类型strict_type是从PHP7开始才引入的东西,默认是不开启的,以后也不会默认开启,是一个很有争议性的特性。PHP之父rasmus,Zend公司创始人andi,PHP7性能方面的核心开发者dmitry和鸟哥laruence都投了反对票:
https://wiki.php.net/rfc/scalar_type_hints_v5
你写的是php7的代码,declare也好,类型指定也好,都是php7的特性
因为php7是个较大改动的新版本,所以这些特性php5.5并不支持
鉴于当下的环境过渡到php7还需要一段时间,你可以先看一下php5.5或php5.6的文档上手,然后再去看php7的新特性
这是PHP 5.6到PHP 7的迁移指南 https://github.com/vimac/Migrating-from-PHP5.6.x-to-PHP7.0.x,你可以当做是了解PHP 7新特性的地方

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

PHP 8.4 带来了多项新功能、安全性改进和性能改进,同时弃用和删除了大量功能。 本指南介绍了如何在 Ubuntu、Debian 或其衍生版本上安装 PHP 8.4 或升级到 PHP 8.4

CakePHP 是 PHP 的开源框架。它的目的是使应用程序的开发、部署和维护变得更加容易。 CakePHP 基于类似 MVC 的架构,功能强大且易于掌握。模型、视图和控制器 gu

登录 CakePHP 是一项非常简单的任务。您只需使用一项功能即可。您可以记录任何后台进程(如 cronjob)的错误、异常、用户活动、用户采取的操作。在 CakePHP 中记录数据很容易。提供了 log() 函数

Visual Studio Code,也称为 VS Code,是一个免费的源代码编辑器 - 或集成开发环境 (IDE) - 可用于所有主要操作系统。 VS Code 拥有针对多种编程语言的大量扩展,可以轻松编写

CakePHP 是一个开源MVC 框架。它使开发、部署和维护应用程序变得更加容易。 CakePHP 有许多库可以减少大多数常见任务的过载。
