• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > Thinkphp5分页函数paginate中的each()传入自定义参数

Thinkphp5分页函数paginate中的each()传入自定义参数

作者:站长图库 字体:[增加 减小] 来源:互联网 时间:2022-04-29

站长图库向大家介绍了Thinkphp5分页函数,paginate中的each()传参等相关知识,希望对您有所帮助

这篇教程来学习Thinkphp5分页函数paginate中的each()传入自定义参数的方法,如果在each函数中想要调用外面的函数或者变量怎么办?

如果在each()函数内调用外部变量,会发现直接报变量不存在的错误

->paginate($rows,false,['query'=>$where])->each(function($item){            dump($tmp); // 外部参数            $item['typename'] = .....;        })

这时会报错,如下:


Thinkphp5分页函数paginate中的each()传入自定义参数


然后我觉得是变量作用域问题,于是在each()里加了个global声明

->paginate($rows,false,['query'=>$where])->each(function($item){            global $tmp;            dump($tmp);            $item['typename'] = .....;        })

虽然不报变量不存在了,但是打印出来的值是null,还是没有调用到外面的变量


Thinkphp5分页函数paginate中的each()传入自定义参数


最后,在each()函数后调用一个use函数,即可传参成功

->paginate($rows,false,['query'=>$where])->each(function($item) use($tmp)/*添加的参数*/{            dump($tmp);            $item['typename'] = .....;        })


Thinkphp5分页函数paginate中的each()传入自定义参数


如果在函数中需要修改变量的值,会发现在函数内,变量的值改变了,但是函数外面的变量值还是没变

->paginate($rows,false,['query'=>$where])->each(function($item) use($tmp){            $tmp = $tmp + 1;            dump($tmp. '"tmp1"');            $item['typename'] =  .....;        })


Thinkphp5分页函数paginate中的each()传入自定义参数

这就是函数内外的变量作用域问题了,加一个&符即可解决

->paginate($rows,false,['query'=>$where])->each(function($item) use(&$tmp){            $tmp = $tmp + 1;            dump($tmp. '"tmp1"');            $item['typename'] =  ....;        })


Thinkphp5分页函数paginate中的each()传入自定义参数


总结

就是在 each(function($item){})中加入 use(&$tmp) 即可,如:

each(function($item) use(&$tmp){})

你学会了吗?


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Thinkphp5分页函数paginate中的each()传入自定义参数

相关文章

  • 2022-04-29Illustrator创建渐变色效果的进度按钮
  • 2022-04-29揭秘Photoshop图层样式与蒙版的一些技巧
  • 2022-04-29解决phpMyadmin给MySQL数据表创建触发器遇到的问题
  • 2022-04-29php中get_object_vars()在数组的实例用法
  • 2022-04-29阿里云Composer全量镜像下载配置及常见问题解答
  • 2022-04-29详解如何​利用WordPress自带短代码添加视频
  • 2022-04-29PHP解密支付宝小程序的加密数据、手机号的示例代码
  • 2022-04-29企业网站在百度竞价中的费用问题
  • 2022-04-29JavaScript如何处理并行请求?四种方式浅析
  • 2022-04-29N种使用 CSS 实现三角形的技巧

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • 带你了解Angular中的组件通讯和依赖注入
    • WordPress主题RiPro美化-给特定分类添加VIP权限才可访问效果
    • 带大家聊聊小程序中的几种页面传参方式
    • Illustrator制作质感水晶球教程
    • 帝国CMS内容字段域名替换函数
    • PhotoShop自定义图案制作背景纹理教程
    • Photoshop制作超酷的木纹立体字教程
    • TP6+vue-element-admin实现后台登录验证码
    • 判断是否为jquery对象使用什么运算符
    • 如何解决centos6终端乱码问题

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有