记laravel项目本地环境PHP7.1,线上7.2,报错each函数废弃问题
码农编程进阶笔记
共 2204字,需浏览 5分钟
· 2020-09-25
the each() function is deprecated. this message will be suppressed on further calls laravel
例子1:
php7.1写法
if ( is_array( $u ) ) {
while( list( $key ) = each( $u ) ) {
$u = $u[$key];
break;
}
}
改为php7.2写法
if ( is_array( $u ) ) {
$u = current($u);
}
foreach()
function as a substitute of deprecated each()
.
Here I let a couple of examples that works to me in
Wordpress.----正如PHP7.2所说,我建议使用foreach()函数来替代已弃用的each()。这里我举几个在Wordpress中对我有用的例子。(OLD) while ( list( $branch, $sub_tree ) = each( $_tree ) ) {...}
(NEW) foreach ( (Array) $_tree as $branch => $sub_tree ) {...}
(OLD) while ( $activity = each( $this->init_activity ) ) {...}
(NEW) foreach ( $this->init_activity as $activity ) {...}
(old)while(list($file, $info) = each($this->images))
(new)foreach($this->images as $file => $info) {
// ...
}
例子2
16548 while (list($id, $name) = each($attr_array[1])) { //7.1
I replaced the line with the next code in both lines and it worked,替换为如下
foreach($attr_array[1] as $id => $name) { //7.2
例子3:我的例子:支付过程中生成签名时出现错误
public function createLinkString($param)
{
$arg = "";
//数组排序
ksort($param);
reset($param);
//7.1写法
/*while (list ($key, $val) = each($param)) {
if ($key == "sign") continue;
if (!empty($key)) {
$arg .= $key . "=";
}
if (is_array($val)) {
$arg .= $this->createLinkString($val) . "&";
} else {
$arg .= $val . "&";
}
}*/
//7.2写法
foreach ($param as $key => $val) {
if ($key == "sign") continue;
if (!empty($key)) {
$arg .= $key . "=";
}
if (is_array($val)) {
$arg .= $this->createLinkString($val) . "&";
} else {
$arg .= $val . "&";
}
}
//去掉最后一个&字符
$arg = substr($arg, 0, strlen($arg) - 1);
return $arg;
}
总之,一句话,php7.2版本中each函数废弃了不能用,直接用foreach替换就ok了。
评论
搭建完美的技术写作环境,第1-10章
大家好,我是章北海,《机器学习算法与 Python 实战》和《玩机器学习的章北海》号主,985 统计学硕士,5 年时间撰写了 460 余篇优质原创文章,内容涵盖统计学、数据分析、机器学习、深度学习、Python 实战。毕业之后先后从事数据分析、机器学习工程师、项目管理,这些年积累了很多经验,工作之外
机器学习算法与Python实战
0
五一抢票难,Github上这几个Python项目,你可以试试
又到五一长假啦(虽然其实就放了1天),大家是打算家里蹲or出去玩,又或者是在公司加班呢...今天给大家介绍三个和12306相关的项目,看看你是否用得上。/01/ py12306py12306购票助手,顾名思义,12306买票的~需要在python 3.6以上版本运行程序。1. 安装依赖gi
Crossin的编程教室
0
大量 Java 开源项目停更...
点击关注公众号,Java 干货及时推送↓推荐阅读:投了 100 多份简历后…出品 | OSC开源社区(ID:oschina2013)Sonatype 发布了最新的一份《软件供应链状况》报告,深入探讨了如何在充满选择的世界中定义更好的软件,并探讨人工智能 (AI) 对软件开发的深远
Java技术栈
0
为什么我们公司还在用 Python 开发项目?
作者:哇哒嘻哇https://www.zhihu.com/question/278798145/answer/3416549119最近几年里,经常看到某些曾重度使用 Python 的大公司迁移成其它语言技术栈,但是,那些小公司/小团队的情况如何呢?一直很想了解那些仍在坚持使用 Python,且支撑业
机器学习算法与Python实战
0
LangChain又上新了!LangChain项目贡献者@莫尔索新书重磅上市
在 AI 领域,每天都有新技术和框架出现,作为一个开源框架,LangChain 提供了构建基于大模型的 AI 应用所需的模块和工具,大大降低了 AI 应用开发的门槛,使得任何人都可以基于 GPT-4 等大模型构建自己的创意应用。LangChain 框架的爆火LangChain 作为开源项目首次进入公
机器学习实验室
0
展讯平台手机重启问题分析指南
和你一起终身学习,这里是程序员Android经典好文推荐,通过阅读本文,您将收获以下知识点:一、 User 版本 默认开启 sysdump 方法二、插入SD卡 抓取Sysdump log三、 sysdump log 分析四、展讯平台抓取重启 串口log的方案五、展讯平台判断重启类型六、展讯平台关闭
程序员Android
0
字节面试:如何解决MQ消息积压问题?
面试题大全:www.javacn.siteMQ(Message Queue)消息积压问题指的是在消息队列中累积了大量未处理的消息,导致消息队列中的消息积压严重,超出系统处理能力,影响系统性能和稳定性的现象。1.消息积压是哪个环节的问题?MQ 执行有三大阶段:消息生产阶段。消息存储阶段。消息消费阶段。
Java中文社群
0
胡思乱想,主动叫停,换个环境
点击蓝字,关注我们影响人们活动的最主要因素是潜意识层面的思维。意识大部分时间起到的作用只不过是在为潜意识的所作所为找寻解释而已。认知模式指的是自动思维产生的过程,它是我们组织和加工世界的方式,发生在潜意识层面很难被察觉到,我们更可能觉察到的是随之而来的情绪和反应。情绪和行为都与我们对情境的理解和想法
小Q聊产品
3