Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[求助] 网站每天中午12点出现Warning提示应该怎么修改

[复制链接]
a453650749 发表于 2017-11-18 12:47:27 | 显示全部楼层 |阅读模式
本帖最后由 a453650749 于 2017-12-21 14:48 编辑

DZ3.2X PHP版本: 5.2.17 搬家后出现下面的提示 怎么修改啊补充一下 我的这个论坛用的是WIN主机 换成linux主机后就没有这个情况了 WIN主机下该怎么修改啊

Warning: Invalid argument supplied for foreach() in E:\Inetpub\vhosts\xxxxxx.com\httpdocs\source\function\cache\cache_announcements.php on line 17

同样的问题 进入论坛后台以后还有一个错误
Warning: Invalid argument supplied for foreach() in E:\Inetpub\vhosts\xxxx.com\httpdocs\source\function\cache\cache_setting.php on line 462

Failure 发表于 2017-11-18 13:40:57 | 显示全部楼层
程序版本? PHP版本?  报一下  
多数是环境问题!
回复

使用道具 举报

jameson512 发表于 2017-11-18 14:03:27 | 显示全部楼层
试试关闭php的安全模式或者关闭计划任务
回复

使用道具 举报

crx349 发表于 2017-11-18 14:16:35 | 显示全部楼层
curl运行超时?可以看看 php错误日志 排查故障哦
回复

使用道具 举报

 楼主| a453650749 发表于 2017-11-18 14:32:50 | 显示全部楼层
Failure 发表于 2017-11-18 13:40
程序版本? PHP版本?  报一下  
多数是环境问题!

DZ3.2X PHP版本: 5.2.17
回复

使用道具 举报

 楼主| a453650749 发表于 2017-11-20 15:30:54 | 显示全部楼层
求助 大家帮帮忙
回复

使用道具 举报

Failure 发表于 2017-11-20 16:23:10 | 显示全部楼层
分析PHP日志错误地方进行处理  
回复

使用道具 举报

 楼主| a453650749 发表于 2017-11-20 16:29:59 | 显示全部楼层
本帖最后由 a453650749 于 2017-11-20 16:38 编辑
Failure 发表于 2017-11-20 16:23
分析PHP日志错误地方进行处理

额 我不会啊 另外高手帮个忙 帮忙看看这段代码哪里有问题
                                }

                                foreach(lang($path.'/template') as $k => $v) {
                                        $this->language['inner'][$k] = $v;
                                }


刚才看错行了这个才是141行的代码
这是source\class\class_template.php文件 第141行的一段代码 我在百度知道上面求组的有人说是需要添加容错性 错误提示是Warning: Invalid argument supplied for foreach() in httpdocs\source\class\class_template.php on line 141 我感觉应该是第一行foreach后面的可能有问题 但是不懂 帮忙看看
回复

使用道具 举报

skyfree_ne 发表于 2017-11-20 16:32:16 | 显示全部楼层
如果每天都定时出现,确定不是某个计划任务?
回复

使用道具 举报

 楼主| a453650749 发表于 2017-11-20 16:42:50 | 显示全部楼层
本帖最后由 a453650749 于 2017-11-20 16:49 编辑
Failure 发表于 2017-11-20 16:23
分析PHP日志错误地方进行处理

百度知道上面说
在 php 中,如问题所描述的 foreach 遍历源数组出现的错误,通常是由于所遍历的不是一个有效数组。

通常的代码中,会在 foreach 之前添加一个 is_array() 进行判断:
if(is_array($aaaa))
{                           
    foreach(....)
    {
        .....
     }
}
我自己琢磨了下 我以前在论坛求助过类似的问题 我按照那个解决方案 自己弄了吸啊应该改成(对吗?)if(is_array($path.'/template')){   
                                foreach(lang($path.'/template') as $k => $v) {
                                        $this->language['inner'][$k] = $v;

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-29 13:29 , Processed in 0.023260 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表