php严格模式的使用
<?php
declare (strict_types = 1);
namespace app\controller; use app\BaseController;
use think\facade\Db; class Index extends BaseController
{
public function index()
{
$this->hello((int) $_GET['a']);
$a = Db::name('user')->where('id', 1)->find(); return json($a);
} public function hello(string $name = 'ThinkPHP6')
{
return 'hello,' . $name;
}
}
1.declare (strict_types = 1); //开启严格模式,检查参数的类型
Argument 1 passed to app\controller\Index::hello() must be of the type string, int given, called in /www/wwwroot/test/tp6/app/controller/Index.php on line 12
1.传参和定义的类型不一致会直接报错,去掉严格模式不会报错
2.hello(string $name = 'ThinkPHP6') //hello函数定义name必须传字符串类型
3.$this->hello((int) $_GET['a']); //实际传参时候给了一个整形
4.declare (strict_types = 1); 在严格模式下直接报错
php严格模式的使用的更多相关文章
- 【原】谈谈对Objective-C中代理模式的误解
[原]谈谈对Objective-C中代理模式的误解 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 这篇文章主要是对代理模式和委托模式进行了对比,个人认为Objective ...
- 彻底理解AC多模式匹配算法
(本文尤其适合遍览网上的讲解而仍百思不得姐的同学) 一.原理 AC自动机首先将模式组记录为Trie字典树的形式,以节点表示不同状态,边上标以字母表中的字符,表示状态的转移.根节点状态记为0状态,表示起 ...
- 制作类似ThinkPHP框架中的PATHINFO模式功能
一.PATHINFO功能简述 搞PHP的都知道ThinkPHP是一个免费开源的轻量级PHP框架,虽说轻量但它的功能却很强大.这也是我接触学习的第一个框架.TP框架中的URL默认模式即是PathInfo ...
- MVVM模式解析和在WPF中的实现(六) 用依赖注入的方式配置ViewModel并注册消息
MVVM模式解析和在WPF中的实现(六) 用依赖注入的方式配置ViewModel并注册消息 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二 ...
- MVVM模式解析和在WPF中的实现(五)View和ViewModel的通信
MVVM模式解析和在WPF中的实现(五) View和ViewModel的通信 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 M ...
- MVVM模式解析和在WPF中的实现(三)命令绑定
MVVM模式解析和在WPF中的实现(三) 命令绑定 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中 ...
- MVVM模式和在WPF中的实现(二)数据绑定
MVVM模式解析和在WPF中的实现(二) 数据绑定 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中 ...
- MVVM模式和在WPF中的实现(一)MVVM模式简介
MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...
- Microservice架构模式简介
在2014年,Sam Newman,Martin Fowler在ThoughtWorks的一位同事,出版了一本新书<Building Microservices>.该书描述了如何按照Mic ...
- 工厂方法模式——创建型模式02
1. 简单工厂模式 在介绍工厂方法模式之前,先介绍一下简单工厂模式.虽然简单工厂模式不属于GoF 23种设计模式,但通常将它作为学习其他工厂模式的入门,并且在实际开发中使用的也较为频繁. (1 ...
随机推荐
- 老毛桃WinPE以ISO镜像模式安装CentOS7
准备: 一台新台式机(2TB磁盘),将用于安装centos 7,注意安装前请使用工具将磁盘分区先删除. 一个u盘,用户制作老毛桃winpe启动盘. 从www.laomaotao.org下载最新9.3增 ...
- Neo4j删除节点和关系、彻底删除节点标签名(转载备忘)
https://www.jianshu.com/p/59bd829de0de 总结提前: [1]先删关系,再删节点 [2]当记不得关系名时,type(r)可以查到关系名 [3]彻底删除节点标签名,需要 ...
- mysql错误号码2003 can't connect to mysql server on 'localhost' (0)解决方案
找到mysql安装目录下的Bin目录,在cmd中进入这个目录,运行net start mysql 却显示服务名无效 所以此时 首先在MYSQL的安装目录bin下,输入mysqld --install ...
- (mysql笔记)GROUP_CONCAT() 把多行数据合并
不合并查询: 合并查询: SELECT GROUP_CONCAT(id) FROM orderinfo WHERE enterpriseid = 2265 AND shopid =0 AND orde ...
- 菜狗记录pycharm使用问题
1.
- Navcat 密码查看,密码找回
第一步 window下打开注册表 打开以下路径 \HKEY_ CURRENT_ USER\Software\Premium Soft\Navicat\Servers 获取对应数据库信息 如图可见加密后 ...
- 从傻逼才做的大创开始的NLP学习
先实名辱骂一下保加利亚电信的毕业生,留个源码,源码里把自己训好的模型删了,洗好的文本删了,什么都给删了,白茫茫一片真他妈干净. 简单说说目前在做的这个东西,姑且算是个项目吧: 给出一个问句,通过实体识 ...
- sxt_(011_014)_显示添加书籍
一.数据库设计 create table book( bookid int auto_increment primary key, bookname varchar(16), bookprice do ...
- Day21:尝试脱离相同ip连接
今日完成的任务: 1.尝试使用组员打包的jar,在cmd中配置后端. 但是最终还是出现了部分问题导致无法连接. 2.在gitlab中更新最终的前端代码(就不放图了). 明日计划: 1.研究一下jar包 ...
- Install Chia Blockchain on Ubuntu
Install Chia Blockchain on Ubuntu Posted on May 4, 2021 Chia is a new kinda of Crypto Currency that ...