PHP使用copy函数复制windows文件时出现failed to open stream: Invalid argument in错误

原始代码:

$source = 'G:\www\offline\版本号.txt';
$destination = __DIR__ . DIRECTORY_SEPARATOR . 'll.txt';
copy($source,$destination);

报错 Warning: copy(G:\www\offline\版本号.txt): failed to open stream: Invalid argument in
错误原因:字符集错误,windows默认的字符集是GBK,而当前的字符集是UTF-8,所以就出现这个错误。解决这个错误使用iconv函数转换字符集即可。

修改后的代码:

$source = iconv("UTF-8","GBK//IGNORE",'G:\www\offline\版本号.txt');
$destination = __DIR__ . DIRECTORY_SEPARATOR . 'll.txt';
copy($source,$destination);

使用iconv转换字符集,//IGNORE的意义是用来忽略转义字符集时忽略错误,继续执行。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值