本文目录一览:
- 1、thinkphp用file_put_contents()保存远程图片到服务器
- 2、请问通过接口返回的pdf的文件流,怎么用php把这些文件流转为pdf文件
- 3、php将pdf文件格式转换成图片,并压缩
thinkphp用file_put_contents()保存远程图片到服务器
你在逗我,怎么可能直接用程序直接写入另一个服务器。
我的思路是(没有试验过)
转换为图片为二进制文件进行上传到另一个服务器进行处理保存
转换图片为base64 用curl请求服务器进行处理
模拟表单请求
请问通过接口返回的pdf的文件流,怎么用php把这些文件流转为pdf文件
直接将文件流内容写入文件,而文件的后缀名设为 pdf 格式就可以了;PHP 不管保存文件流还是文本,都是用这种方式;
$path = "demo.pdf";
$ret = file_put_contents($path, $arr['data']);
if ($ret) {
echo '保存成功'; // 然后可以取查看文件
}
php将pdf文件格式转换成图片,并压缩
有一份pdf文件,需要将其转换成图片, 如果图片过大,同时还需要将其压缩。
1、安装插件
因为不同版本的用法略有区别,我这里用的是2.1版, 最近文档还需要看官方文档。
2、简单使用
3、常用方法
4、其他
1、说明
2、安装
不同版本的使用略有区别,我这用的是2.5版本的
3、简单使用
其中resize,可以指定压缩的宽度和高度,如
如果是指定宽度,智适应高度就是这样
save的三个参数是,
4、更多
更多使用,看 说明文档
压缩图片的时候,报不能读取问题
这个可能是遇到最多的问题。可能原因如下:
1、文件读取权限
查看文件的权限,看是否有读取的权限(r), 没有的话直接把文件改为 777
2、插件不支持该格式文件
输入 php --ri imagick , 在支持列表看是否支持该文件的格式。没有的话,自己百度啦。
3、内存或缓存不够
进入插件的 /vendor/intervention/image/src/Intervention/Image/Imagick/Decoder.php , 在24行断点
可能会得到消息:
然后,在百度下,原来是压缩的文件过大,插件使用的缓存不够,这里直接将配置改大即可
将配置文件改成如下