Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP消息:PHP警告:中为foreach()提供的参数无效_Php_File Upload_Nginx_Upload - Fatal编程技术网

PHP消息:PHP警告:中为foreach()提供的参数无效

PHP消息:PHP警告:中为foreach()提供的参数无效,php,file-upload,nginx,upload,Php,File Upload,Nginx,Upload,我的脚本在apache服务器上运行良好。但是当我迁移到nginx服务器时,我得到了一个错误: PHP消息:PHP警告:中为foreach提供的参数无效 代码如下: foreach($this->_uploaded as $name) { $file = pathinfo($name); $ad_count = $file['filename']; $path = '/images/ads/'.$friendly_name.'-

我的脚本在apache服务器上运行良好。但是当我迁移到nginx服务器时,我得到了一个错误:

PHP消息:PHP警告:中为foreach提供的参数无效

代码如下:

        foreach($this->_uploaded as $name) {
        $file = pathinfo($name);
        $ad_count = $file['filename'];
        $path = '/images/ads/'.$friendly_name.'-black-friday-'.($ad_count).'-' . $this->createRandomString() . '.' . $file['extension'];

        if(!copy(__SITE_PATH . "/public/tmp/" . $name, __FRONTEND_PATH . $path)) {
            return false;
        }
        $this->db->query("INSERT INTO stores_ads (stores_id, path, sort) VALUES (".$id.", '".$path."', ".(int)$ad_count.")");
        @unlink(__SITE_PATH . "/public/tmp/" . $name);
    }
你知道原因吗?我想可能是上传文件夹的路径不对吧?还是nginx配置有问题

这是完整的代码:

添加如下内容:

if (is_array($this->_uploaded)) {

//add your code
   foreach($this->_uploaded as $name) {
        $file = pathinfo($name);
        # code...
   }
}

希望有此帮助:

$this->\u上传的需要是一个数组。请尝试打印\u r$this->\u上载并查看它是否是一个数组。在$this->\u上载中有什么内容???同样,您需要确保$this->\u上载的是一个数组。您的数组可能只是一个数组empty@Duniyadnd:对于空阵列,这不会是一个警告。它不再显示错误,但我无法上载文件。