Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.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 copy()创建一个空图像文件_Php_Image_Copy - Fatal编程技术网

PHP copy()创建一个空图像文件

PHP copy()创建一个空图像文件,php,image,copy,Php,Image,Copy,我的服务器上的一个目录中有一个映像,希望将其复制到另一个目录 所以我用 $post_picture = 'http://mysite.com/image.jpg'; copy($post_picture, 'images/pictures/post/thumb/' . $info['filename'] . '_thumb.' . $info['extension']); 问题是,实际上在我的thumb目录中创建

我的服务器上的一个目录中有一个映像,希望将其复制到另一个目录

所以我用

$post_picture = 'http://mysite.com/image.jpg';

copy($post_picture, 
         'images/pictures/post/thumb/' . 
         $info['filename'] . 
         '_thumb.' . 
         $info['extension']);
问题是,实际上在我的
thumb
目录中创建了一个文件,但该图像是空的(0 x 0像素)。我没有错误

知道发生了什么吗

所有目录的权限为755,原始和复制图像的权限均为644。原始文件通常在浏览器上显示


谢谢。

变量
$post\u picture
应该具有指向文件的文件系统路径,而不是指向文件的URL。

变量
$post\u picture
可能具有指向文件的文件系统路径,而不是文件的URL。

您有任何形式的热链接保护可以改变php接收的内容吗?
允许使用allow\u url\u fopen吗?

您是否有任何形式的热链接保护可以改变php接收的内容?
允许使用allow\u url\u fopen吗?

在php.ini中是否将allow\u url\u fopen设置为true


如果远程连接被阻止,有时会产生这种结果。

在php.ini中允许url\u fopen设置为true吗


如果远程连接被阻塞,有时会产生这种结果。

$post\u图片应该是本地路径,我相信

copy( '/path/image.jpg', ... );

$post_图片应该是本地路径,我相信

copy( '/path/image.jpg', ... );
请用这个

<?php
$source = 'f-1/2.jpg';
$destination = 'f-2/2.jpg';

$data = file_get_contents($source);

$handle = fopen($destination, "w");
fwrite($handle, $data);
fclose($handle);
?>

请用这个

<?php
$source = 'f-1/2.jpg';
$destination = 'f-2/2.jpg';

$data = file_get_contents($source);

$handle = fopen($destination, "w");
fwrite($handle, $data);
fclose($handle);
?>


它是一个空文件,还是一个0x0像素的图像?为什么要使用图像URL而不是其正常路径?这不是你服务器上的图像吗?PHP是否能够获取url(请参阅allow_url_fopen选项)?allow_url_fopen处于启用状态(本地和主)@kavisiegel该图像为41KB,但0x0lorenzo-s该图像位于我的服务器上,但复制允许url它是空文件还是0x0像素图像?为什么使用图像url而不是其正常路径?这不是你服务器上的图像吗?PHP是否能够获取url(请参阅允许url打开选项)?允许url打开(本地和主)@kavisiegel该图像为41KB,但0x0lorenzo-s该图像位于我的服务器上,但复制允许url
copy()
支持url。我们不知道图像是否从同一台服务器获取。在问题评论中看到我的问题。你是对的,的确如此。当我快速查看php手册页面时,没有看到它。
copy()
支持URL。我们不知道图像是否从同一台服务器获取。在问题评论中看到我的问题。你是对的,的确如此。当我快速查看php手册页面时,没有看到它。看起来,
copy()
由于.htaccess中的重定向而失败了-我曾经评论说文件显示正常-感谢您指出这一点-我现在使用完整的系统路径而不是URL,它甚至可以与重定向一起工作看起来像
copy()
由于.htaccess中的重定向而失败-我曾经评论过文件显示正常-感谢您指出这一点-我现在使用的是完整系统路径而不是URL,它甚至可以与重定向一起工作