使用mpdf 生成pdf文件 PHP

首先安装mpdf composer require mpdf/mpdf

public function testpdf(Request $request){

        $mpdf = new Mpdf(['tempDir'=>runtime_path().'/pdftmp']);

        $mpdf->autoScriptToLang = true;  
        $mpdf->autoLangToFont = true; 

        $html = <<<EOD
        <h1 style='text-align:center;'>Hello World你好啊</h1>
EOD;

        $mpdf->WriteHTML($html);
        //public_path().'/pdf/'

        $file = public_path().'/pdf/'.time().'.pdf';
        $mpdf->Output($file,'F');

        return response()->download($file, time().'.pdf');
    }

生成结果


杨佳乐 发布于  2024-7-23 23:38 

mysql CONVERT_TZ 返回NULL问题 MySQL

1.SELECT CONVERT_TZ(create_time, 'UTC', 'MET') AS local_time FROM la_test limit 1

2.SELECT CONVERT_TZ(create_time, '+00:00', '+08:00') AS local_time FROM la_test limit 1

使用第一种方式可能会导致响应为NULL,可以使用第二种方式


杨佳乐 发布于  2024-7-9 09:12 

乌班图修改为UTC时区 服务器

1.查询可用时区列表
timedatectl list-timezones

2.设置为UTC时区
sudo timedatectl set-timezone UTC

3.同步时区
apt install ntpdate

sudo ntpdate cn.pool.ntp.org

查看当前时间

date -R


杨佳乐 发布于  2024-7-9 08:58 

苹果开发者多个app是否可以使用同一个证书? 其他

我们在实际的运营中,一个公司可能存在多个app,比如网约车有司机端,有用户端,甚至还有平台管理端。

假如是用一个苹果开发者账号的多个app,是可以使用同一个证书的,因为在同一个苹果开发者账号,最多创建两个发布类型的证书,假如你有三个app以上,是不可能为每一个app创建一个证书的,所以可以多个app公用同一个ios证书。

假如你的苹果开发者账号是个人账号或者company类型的账号,想共享你的证书给其他人使用,我建议是不要这样做,因为其他人假如用了你的证书打包。那么其他人的app就需要在你的苹果开发者账号里上架,app store里显示其他人开发APP的开发者变成了你或你公司的名字。那么其他人的app的责任风险就需要账号拥有者去承担。而开发者的知识产权问题也无法得到保证。虽然这个共享在技术上是没有问题的。

假如你的苹果开发者账号是企业类型的账号,技术上是可以共享你的证书给其他人打包的。但是有一个风险就是,企业类型的账号,苹果仅允许企业内部使用,无法用于上架或互联网安装。假如你让互联网用户安装,苹果有可能会监控到,然后把你的证书撤回或封号。这样你之前安装的用户都会掉签,因此能否共享给别人使用,你最好根据别人的用途而决定。

回到技术上的问题,多个app可以使用同一个私钥证书。但是描述文件(证书profile文件)是不能使用同一个文件的,因为描述文件需要绑定appId,因此不同的app需要创建一个单独的描述文件,描述文件不能共享使用。


杨佳乐 发布于  2024-5-21 08:47 

webman nginx反向代理配置 PHP

upstream webman {
    server 127.0.0.1:8787;
    keepalive 10240;
}

server {
  server_name 站点域名;
  listen 80;
  access_log off;
  root /your/webman/public;

  location ^~ / {
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header Host $http_host;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_http_version 1.1;
      proxy_set_header Connection "";
      if (!-f $request_filename){
          proxy_pass http://webman;
      }
  }
}

替换server_name 与 root即可

需要注意upstream设置,否则会导致下载大文件中断错误


杨佳乐 发布于  2024-5-13 14:18