首页
复制
搜索
前进
后退
重载网页
和我当邻居
给我留言吧
首页
统计
关于
WOW怀旧
友链
更多
留言
壁纸
直播
Search
1
关于《杀死那个石家庄人》背后的故事
3,800 阅读
2
沈阳故宫之旅
609 阅读
3
摄影记录|鸿恩寺
562 阅读
4
赤壁赋| 知不可乎骤得,托遗响于悲风
423 阅读
5
Laravel-admin 删除行|删除回调
366 阅读
编程技术
GoLang
Vue
PHP
Linux
Redis
网络安全
生活杂记
登录
Search
标签搜索
PHP
随笔
Mysql
Laravel-Admin
Laravel
摄影
设计模式
Ab
Linux
Javascript
MAC
支付
CentOs
sh
嘉陵江
南滨路
蓝易云
redis
万能青年
累计撰写
60
篇文章
累计收到
145
条评论
首页
栏目
编程技术
GoLang
Vue
PHP
Linux
Redis
网络安全
生活杂记
页面
统计
关于
WOW怀旧
友链
留言
壁纸
直播
搜索到
60
篇与
的结果
2022-03-14
centos7安装Wkhtmltopdf
从官网下载预编译版安装:wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz解压tar xvfJ wkhtmltox-0.12.4_linux-generic-amd64.tar.xz移动位置并赋予权限cd wkhtmltox/bin sudo mv ./wkhtmltopdf /usr/bin/wkhtmltopdf sudo chmod +x /usr/bin/wkhtmltopdf修复字体yum install urw-fonts libXext openssl-devel解决中文不显示问题将 windows下的字体,例如simsun.ttc ,或者msyh.ttf,或者msyhbd.ttf 复制到 linux系统 /usr/share/fonts 下这里附上文字包 {cloud title="simsum.ttc" type="default" url="https://blog.shmilyi.cn/simsun.zip" password="无"/}tips:若为docker环境,字体目录需要与宿主机映射否则需要放到docker容器内的/usr/share/fonts 下进入字体库目录,刷新系统即刻生效,输入命令mkfontscale mkfontdir fc-cache测试wkhtmltopdf http://www.baidu.com ./test.pdf
2022年03月14日
271 阅读
0 评论
0 点赞
2022-03-14
laravel-admin 报错 | Disk [admin] not configured, please add a disk config in `config/filesystems.php`.
config/filesystems.php 添加admin 文件上传配置 'admin' => [ 'driver' => 'local', 'root' => public_path('upload'), 'visibility' => 'public', 'url' => env('APP_URL').'/upload/', ],最终效果'disks' => [ 'local' => [ 'driver' => 'local', 'root' => storage_path('app'), ], 'public' => [ 'driver' => 'local', 'root' => storage_path('app/public'), 'url' => env('APP_URL').'/storage', 'visibility' => 'public', ], 's3' => [ 'driver' => 's3', 'key' => env('AWS_KEY'), 'secret' => env('AWS_SECRET'), 'region' => env('AWS_REGION'), 'bucket' => env('AWS_BUCKET'), ], 'admin' => [ 'driver' => 'local', 'root' => public_path('upload'), 'visibility' => 'public', 'url' => env('APP_URL').'/upload/', ], ],
2022年03月14日
223 阅读
0 评论
0 点赞
2022-03-14
Mysql根据经纬度计算距离并排序
计算公式纬度:31.182592 store_locy 经度:121.431744 store_locx按M计算{callout color="#f0ad4e"}计算出来的结果单位为m{/callout} SELECT *, ROUND( 6378.138 * 2 * ASIN( SQRT( POW( SIN( ( 31.182592 * PI() / 180 - store_locy * PI() / 180 ) / 2 ), 2 ) + COS(31.182592 * PI() / 180) * COS(store_locy * PI() / 180) * POW( SIN( ( 121.431744 * PI() / 180 - store_locx * PI() / 180 ) / 2 ), 2 ) ) ) * 1000 ) AS distance FROM t_merchant_store ORDER BY distance ACS按KM计算{callout color="#f0ad4e"}计算出来的结果单位为km{/callout} SELECT *, ( 2 * 6378.137 * ASIN( SQRT( POW( SIN( PI( ) * ( 121.431744- store_locx ) / 360 ), 2 ) + COS( PI( ) * 31.182592 / 180 ) * COS( store_locy * PI( ) / 180 ) * POW( SIN( PI( ) * ( 31.182592- store_locy ) / 360 ), 2 ) ) ) ) AS distance FROM t_merchant_store ORDER BY distance ASC转自: https://blog.csdn.net/lishuaiqi_d/article/details/105428037
2022年03月14日
125 阅读
0 评论
0 点赞
2022-03-14
PHP图片旋转
代码 /* * $filename 图片地址 * $src 替换地址 * $degrees 转换度数 */ private function flip($filename='',$src='',$degrees = 90) { if(!$filename || !file_exists($filename) || !$src || !file_exists($src)){ return false; } $data = @getimagesize($filename); if($data==false)return false; //读取旧图片 switch ($data[2]) { case 1: $src_f = imagecreatefromgif($filename);break; case 2: $src_f = imagecreatefromjpeg($filename);break; case 3: $src_f = imagecreatefrompng($filename);break; } if($src_f=="")return false; $rotate = @imagerotate($src_f, $degrees,0); if(!imagejpeg($rotate,$src,100))return false; @imagedestroy($rotate); return true; }
2022年03月14日
108 阅读
0 评论
0 点赞
2022-03-14
laravel 8 自定义日志文件名|自定义目录
环境{callout color="#f0ad4e"}基于Laravel 8{/callout}代码<?php namespace App\Http\Helpers; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Route; use Monolog\Formatter\LineFormatter; use Monolog\Logger; use Monolog\Handler\StreamHandler; class LogHelper { private static $filename =''; // 文件记录类型 1:文件目录/日期/文件名 2:所有日志一个文件夹 private function __construct() { } private function __clone() { // TODO: Implement __clone() method. } /** * 设置日志文件名称 * @param $filename */ public static function setFilename($filename) { self::$filename = $filename; } /** * @param $message * @param array $data * @param string $filename * @param string $isDate 是否按月份分文件夹 */ private static function _save($message, $data = [],string $filename, $isDate = true) { $action = Route::current()->getActionName(); list($class, $method) = explode('@', $action); if (empty($filename)) $filename = !empty(self::$filename) ? self::$filename : $method; $log = new Logger('mylog'); if (PHP_SAPI == 'cli') { // 命令行访问脚本的,加一个cli标识和用户浏览器访问的区分开 $filename .= '_cli'; } $filename = $filename . '.log'; if ($isDate) { // 是否要按日显示 $path = storage_path('logs/' . date('Y-m-d')); } else { $path = storage_path('logs/'); } // 有时候运维没给号权限,容易导致写入日志失败 self::mkDirs($path); $path = $path . '/' . $filename; if (gettype($data) != 'array') { $message .= " " . $data; $data = []; } $microtime = microtime(); $message = '[' . substr($microtime, 0, 8) . '] ' . $message;// 记录毫秒时间 // finally, create a formatter $formatter = new LineFormatter("[%datetime%] %message% %context%\n", "Y-m-d H:i:s"); $stream = new StreamHandler($path, Logger::INFO); $stream->setFormatter($formatter); $log->pushHandler($stream); $log->info($message, $data); } /** * 日志打印 * @param string $message * @param array $data * @param string $filename */ public static function info(string $message,$data = [],string $filename='') { self::_save($message, $data, $filename); } /** * 给日志文件夹权限 * @param $dir * @param int $mode * @return bool */ private static function mkDirs($dir, int $mode = 0777) { if (is_dir($dir) || @mkdir($dir, $mode)) { return TRUE; } if (!self::mkdirs(dirname($dir), $mode)) { return FALSE; } return @mkdir($dir, $mode); } /** * 记录最后一条执行的sql * @param string $file_name * */ public static function sql(string $file_name='') { if (empty($file_name)) $file_name = !empty(self::$filename) ? self::$filename : __FUNCTION__.'_sql'; DB::listen(function ($sql) use ($file_name) { foreach ($sql->bindings as $i => $binding) { if ($binding instanceof \DateTime) { $sql->bindings[$i] = $binding->format('\'Y-m-d H:i:s\''); } else { if (is_string($binding)) { $sql->bindings[$i] = "'$binding'"; } } } $query = str_replace(array('%', '?'), array('%%', '%s'), $sql->sql); $query = vsprintf($query, $sql->bindings); LogHelper::info('sql:', $query, $file_name); }); } } 调用// 按日 按文件名 LogHelper::info('A 数组',['a','b'],'order'); // 按文件名 LogHelper::info('A 数组',['a','b'],'order'); // 只有字符串 LogHelper::info('B 字符串'); // 记录下面的执行sql LogHelper::sql(); // 输出: // [2021-04-15 11:50:37] [0.627499] sql:select * from `user` where `mobile` = '' limit 1 []
2022年03月14日
137 阅读
0 评论
0 点赞
1
...
7
8
9
...
12