技术饭 php通过ImageMagick类库将pdf转换成图片

php通过ImageMagick类库将pdf转换成图片,Imagick 是用 ImageMagic API 来创建和修改图像的PHP官方扩展。ImageMagick 是用来创建,编辑,合并位图图像的一套组件。 它能够用于读取,转换,写入多种不同格式的图像。 包含 DPX、EXR、GIF、JPEG、JPEG-2000、PDF、PhotoCD、PNG、Postscript、SVG 和 TIFF。

阅读全文 » 160天前
2023年11月30日

技术饭 php通过spatie/browsershot将html文件转成pdf、图片

php通过 spatie/browsershot 将html文件转成pdf、图片,最近需要将html文件转成png或者是pdf合同,如果使用php手动处理的话那过程就需要经过,html -> pdf -> png,这样单独写的话就比较麻烦,如果有composer或者类库的话那就很好用了,搜了一下 spatie/browsershot 比较好用些,只是需要依赖npm、puppeteer。

阅读全文 » 306天前
2023年07月07日

技术饭 php生成pdf文件上传到七牛云

php生成pdf文件上传到七牛云,php生成pdf使用composer require tecnickcom/tcpdf,通过html生成对应的pdf使用还是很方便的,缺点是html样式不是很好调整,七牛云上传使用七牛云提供的类库 composer require qiniu/php-sdk即可。php下有多个类库可以生成pdf如tcpdf、mpdf,但是html需要比较写得纯粹些,否则很多样式不支持,导致生成得pdf很乱。

阅读全文 » 320天前
2023年06月23日

技术饭 php语言composer包的开发与发布

php语言composer包的开发与发布,在php开发过程中最常见的就是composer包了。composer管理代码比较方便,对后续的开发大大提升了效率,降低了成本,而且如果作为开源的也可以提供给其他第三方使用,那么如何制作自己的composer包呢?步骤还是相对简单。

阅读全文 » 327天前
2023年06月16日

技术饭 curl 发送 form-data 数据流:Content-Type:multipart/form-data; boundary=xxxxxxxxx; charset=utf-8

curl 发送 form-data 数据流:Content-Type:multipart/form-data; boundary=xxxxxxxxx; charset=utf-8,multipart/form-data是基于post方法来传递数据的,并且其请求内容格式为Content-Type: multipart/form-data,用来指定请求内容的数据编码格式。另外,该格式会生成一个boundary字符串来分割请求头与请求体的,具体的是以一个boundary=${boundary}来进行分割。

阅读全文 » 336天前
2023年06月07日

生活札记 Fiddler抓包、JMeter性能测试、Postman接口调试工具之自动化测试(一)

抓包(packet capture)就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全。抓包也经常被用来进行数据截取等。Apache JMeter 是 Apache 组织基于 Java 开发的压力测试工具,用于对软件做压力测试。Postman是一个接口测试工具,在做接口测试的时候,Postman相当于一个客户端,它可以模拟用户发起的各类HTTP请求,将请求数据发送至服务端,获取对应的响应结果。

阅读全文 » 416天前
2023年03月19日

吃瓜群众 乐刷卡乐宝刷卡app,T+0显示0.55%+3费率,但实际收取2%,机器赶紧丢了吧

最近需要一笔钱,所以想起了好久没刷的乐刷pos机,刷卡前还特意看了卡乐宝的费率还是显示0.55%+3,所以就刷了一笔4w多的金额,没想到竟然收了1000多的手续费!!!经历:乐刷卡乐宝刷卡app,T+0显示0.55%+3费率,但实际收取2%。 3月13号刷了一笔45636.44,到账44621.71,差价手续费是1014.73,按照每年机子通信费99来算的话,45636.44*0.55%+3+99=353,那就多收了661.72。 4007779068 客服说是调了费率到2%,说是官网有公告,多收的钱没办法退还金额了,可是在app上为什么还是0.55?挂羊头卖狗肉吗?这以后谁还敢刷?客服也就一味的道歉道歉,就是没什么用,吃相太难看了,建议大家不要再刷了,机器都丢了吧!!!

阅读全文 » 421天前
2023年03月14日

技术饭 前端js加密后台php解密,自定义加密方法

前端js加密后台php解密,自定义加密方法,前端html输入用户名密码之后,使用http传到后台,post的内容全部是明文,用户名和密码通过抓包工具可以很容易获取到,所以需要在http传输之前对密码进行加密处理,php收到post内容之后进行解密,然后进行后续认证处理。

阅读全文 » 1251天前
2020年12月04日

技术饭 /var/mail/root 定时任务crontab生成日志文件太大的处理方案,You have new mail in /var/spool/mail/root

之前讲过聊过 file_put_contents(): Only 0 of 23634 bytes written, possibly out of free disk space,磁盘空间不足这个问题,解决方法是删除 /var/mail/ 下的root日志日志文件,可是过不了多久又满了,所以只能从源头去禁止生成定时任务生成的日志才能彻底的解决问题。有时候处理的时候还会出现:You have new mail in /var/spool/mail/root的报错。

阅读全文 » 1307天前
2020年10月09日

技术饭 file_put_contents(): Only 0 of 23634 bytes written, possibly out of free disk space,磁盘空间不足

访问网站系统报错:file_put_contents(): Only 0 of 23634 bytes written, possibly out of free disk space。意思就是磁盘空间不足,df -lh 查了一下,确实是发现磁盘满了,想想应该是日志文件太大了,所以删除项目的runtime下的文件释放空间就可以了。

阅读全文 » 1327天前
2020年09月19日

技术饭 POST参数超过1000后,$_POST中1000以后的参数丢失,但是php5.6 max_input_vars 修改无反应?

之前做了图片文件上传到阿里云oss存储中,阿里本身的传输没有问题,但是在当保存到自己数据库的时候就报错了,第一次报错是id不存在,本来数据表就是一条记录,更新的主键ID竟然不存在,查了下js传过过来的formdata参数正常,但是$_POST就只仅仅取到了一部分数据,剩余的数据丢失了,想想应该是php限制的问题,最终确定是参数: max_input_vars 默认限制了1000,本来是改成了5000,但是测了还是没效果,查了phpinfo()发现:php-fpm重启之后 max_input_vars 的值并没有改变,多方查证发现服务器的php配置原来是外包公司配置的,外包公司把配置文件改到了 php-fpm.conf 文件里面,所以原始的php.ini中的参数就失效了,无论设置成什么都会失效。

阅读全文 » 1332天前
2020年09月14日

技术饭 阿里云 Composer 全量镜像

阿里云 Composer 全量镜像,阿里云正式上线PHP Composer全量镜像,所有PHP开发者都可以通过我们的开发者社区developer.aliyun.com/composer加速Composer安装器。这款镜像工具的最大优势是快,几乎实现与PHP Packagist官方实时同步,每隔30秒刷新全国CDN缓存。它基于阿里云的对象存储OSS和CDN研发同步系统,通过任务分发,实现同步的快速和稳定。

阅读全文 » 1462天前
2020年05月07日

技术饭 Git 使用中显示“Another git process seems to be running in this repository, e.g. an editor opened by 'git commit'. P”问题解决

fatal: Unable to create 'F:/wnmp/www/gittest/.git/index.lock': File exists.,Git提示存在index.lock被锁住,Another git process seems to be running in this repository, e.g. an editor opened by 'git commit'. Please make sure all processes are terminated then try again. If it still fails, a git process may have crashed in this repository earlier: remove the file manually to continue.

阅读全文 » 1476天前
2020年04月23日

吃瓜群众 通联支付pos机是个坑,激活后扣取99的费用,真是奸商,大家别入坑了

通联支付pos机是个坑,激活后扣取99的费用,真是奸商,大家别入坑了,前几天收到江苏的一个来电,说是需要不要办理pos机,本来我也是自己有pos机的,但是费率高了些,然后通联那边就说费率是0.5%跟0.38%,所以就让他到付28过来,收到机器后就是要激活,激活这步骤可是个巨大的坑。。。

阅读全文 » 1479天前
2020年04月20日

技术饭 使用postman传数组数据

postman是一款强大的本地接口调试工具,我们可以通过它清晰的看到我们数据请求携带的参数和具体数据返回结果,便于我们分析解决问题。在我们做api接口数据调试的时候,大部分是会用到postman的,一般请求数据的参数都是字符串,但是特殊情况下我们是需要传一个数组数据的,那么为了实现这种需求,究竟该怎么做呢?

阅读全文 » 1518天前
2020年03月12日

技术饭 postman接口工具设置headers头部的参数不能加下划线

今天做登录接口测试,正常逻辑是登录之后返回一个token给前端,以后前端都是拿着这个token来获取信息数据,正要测试时发现postman接口工具设置headers头部的参数不能加下划线,使用:sponsor_token 参数一直获取不到数据,纳闷了大半天,后来修改成:sponsortoken 就解决问题了。

阅读全文 » 1520天前
2020年03月10日

技术饭 AikehouA 5.2.0版本,最新版安装出现 HTTP ERROR 500 错误解决方案

今天在使用最新版AikehouA 5.2.0版本时,出现 HTTP ERROR 500 错误,调试了许久,查了nginx的错误日志等,断调试代码,一直没有找到确切的原因,后来在本地php7.0环境、自己服务器php7.0环境测试,安装没有任何问题,故此判断是因为最新版本composer加载了必须支持php7.0的插件,php5.6.x的环境不支持php7.0的一些方法,所以这里就需要删除一些composer包,更新vendor目录即可解决问题。

阅读全文 » 1524天前
2020年03月06日

技术饭 如何安全安装不受信任的软件包?以超级用户或root身份运行Composer是否安全?

某些Composer命令,包括exec,install和,update允许第三方代码在您的系统上执行。这来自其“插件”和“脚本”功能。插件和脚本对运行Composer的用户帐户具有完全访问权限。因此,强烈建议 避免以超级用户/ root身份运行Composer。

阅读全文 » 1540天前
2020年02月19日

技术饭 ajax 设置Access-Control-Allow-Origin实现跨域访问

ajax 设置Access-Control-Allow-Origin实现跨域访问,ajax跨域访问是一个老问题了,解决方法很多,比较常用的是JSONP方法,JSONP方法是一种非官方方法,而且这种方法只支持GET方式,不如POST方式安全。

阅读全文 » 1968天前
2018年12月18日

技术饭 Laravel框架基础入门,Composer的基础使用

Laravel框架基础入门,Laravel是一套简洁、优雅的PHP Web开发框架(PHP Web Framework)。它可以让你从面条一样杂乱的代码中解脱出来;它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁、富于表达力。在Laravel中已经具有了一套高级的PHP ActiveRecord实现 -- Eloquent ORM。它能方便的将“约束(constraints)”应用到关系的双方,这样你就具有了对数据的完全控制,而且享受到ActiveRecord的所有便利。Eloquent原生支持Fluent中查询构造器(query-builder)的所有方法。

阅读全文 » 2227天前
2018年04月03日

技术饭 微信支付异步notify_url中$_GET、$_POST无法获取到数据解决方案

微信支付异步notify_url中$_GET、$_POST无法获取到数据解决方案,php5.3以及之前版本$GLOBALS['HTTP_RAW_POST_DATA'] 可以使用,但是在PHP5.3以后已废弃,也就是说$_GET、$_POST取不到数据

阅读全文 » 2256天前
2018年03月05日

技术饭 php的curl设置Content-Type:application/x-www-form-urlencoded头部

php的curl设置Content-Type:application/x-www-form-urlencoded头部,如果是是一个数组,则content_type自动为multipart/form-data提交过去的是原始post,用$_POST[key]是无法获取如果是字符串。则反之。​

阅读全文 » 2402天前
2017年10月10日

技术饭 ajax请求中的jsonp可以设置POST方式,但效率不高

ajax请求中的jsonp可以设置POST方式,但效率不高,JSONP是一种非官方协议,可以解决AJAX跨域提交数据情况。安全部门的同事测试发现,都是GET的请求,相比较而言不如POST安全,还是尽量改了吧。但是,JSONP真的支持POST提交吗?近期在项目中遇到这样一问题,关于jsonp跨域问题,get传值是可以的,但post传值死活不行啊,于是网上看了一大堆关于这方面的资料,最终问题得以解决,今天抽空与大家分享下。

阅读全文 » 2550天前
2017年05月15日

技术饭 PHP中json_decode 函数解析 json 结果为 NULL 的解决方案

PHP中json_decode 函数解析 json 结果为 NULL 的解决方案,今天做连连支付接口的时候,接口同步返回的POST值res_data是一个json字符串,但是使用json_decode的时候却返回了null,原因找了许久,后面百度一番才解决这个问题。

阅读全文 » 2584天前
2017年04月11日

技术饭 post方式下载文件解决方案

post方式下载文件解决方案,在php中文件下载一般是使用get方式比较多,那么如果想做成post方式应该如何实现呢,今天看了一些博客,然后就自己弄了一下,可以参考一下。

阅读全文 » 2602天前
2017年03月24日

技术饭 php中curl扩展的简单使用

cURL可以使用URL的语法模拟浏览器来传输数据,因为它是模拟浏览器,因此它同样支持多种协议,FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP等协议都可以很好的支持,包括一些:HTTPS认证,HTTP POST方法,HTTP PUT方法,FTP上传,keyberos认证,HTTP上传,代理服务器,cookies,用户名/密码认证,下载文件断点续传,上传文件断点续传,http代理服务器管道,甚至它还支持IPv6,scoket5代理服务器,通过http代理服务器上传文件到FTP服务器等等。这就是我们为什么要使用cURL的原因!

阅读全文 » 2681天前
2017年01月04日