首页
时事
归档
壁纸
更多
留言
关于
邻里
Search
1
使用必应Bing每日图片做网站背景(自动)
2,987 阅读
2
vue的输入值校验规则整理
1,662 阅读
3
VUE `ERR_CONNECTION_TIMED_OUT`的解决办法
1,628 阅读
4
好站推荐-https://wangchujiang.com/linux-command/
1,598 阅读
5
微信支付开发前准备(小程序、公众号、App、H5)
1,582 阅读
文章
图说
代码
吐槽
登录
Search
标签搜索
Linux
laravel
windows
TYPO3
php
shell脚本
git
微信
好站
vue
第三方登录
centos
linxu
centos7
thinkPHP
微信支付
api
MySQL
桌面
必应首图
Beer
累计撰写
114
篇文章
累计收到
22
条评论
首页
栏目
文章
图说
代码
吐槽
页面
时事
归档
壁纸
留言
关于
邻里
搜索到
90
篇与
文章
的结果
2022-06-20
检测网站502并使用企业微信机器人通知
检测网站访问日志,判断502出现的次数,达到一定次数时重启php-fpm,消除502错误,同时把处理结果使用企业微信机器人进行通知
2022年06月20日
483 阅读
0 评论
0 点赞
2021-12-06
element-ui的el-form表单数据回显后输入框无法输入
解决办法this.form = JSON.parse(JSON.stringify(this.form));element-ui中的另一个解决办法this.form = deepClone(this.form);吐槽问题虽然解决了,但是我依然不知道个中缘由是什么,有同事说不能编辑的可能原因是当前对象未接触绑定(我的业务是动态增加表格行,行中有表单),虽然数据是正常的,但是它还绑定在前任身上,但是此时该对象已经有所改变,通俗点来说就是拿前朝的剑斩本朝的臣...所以这段代码可能的意思是我管你前朝还是本朝,全部抹掉重新赋值就OK了完...
2021年12月06日
1,311 阅读
0 评论
0 点赞
2021-11-09
Typecho插件-每日简报
Demo体验菜单:时事使用1.无插件实现1.在你的主题目录下 ~root/usr/themes/your-theme/ 创建一个单页模板文件2.文件名随意,然后在文件中你想要展示的地方添加如下代码<?php $content = file_get_contents('https://news.topurl.cn?ip='.get_real_ip()); echo $content; ?>3.在typecho后台添加单页,选择刚添加的页面作为模板即可
2021年11月09日
956 阅读
0 评论
0 点赞
2021-11-09
基于Pear Admin与Laravel的后台管理系统
安装获取项目代码cd web部署目录 git clone https://gitee.com/pear-admin/Pear-Admin-Laravel.git chmod -R 755 ./Pear-Admin-Laravel cd ./Pear-Admin-Laravel composer update创建数据库mysql -uroot -p #输入密码 create database pear_admin_laravel配置数据库cp .env.example .env #配置.env里的数据库连接信息初始化数据php artisan key:generate #初始化key php artisan storage:link #软连文件存储目录 chmod -R 755 storage/ #文件存储目录权限 php artisan migrate --step #执行数据迁移 php artisan db:seed #写入初始化数据初始化完成后浏览器打开项目地址 https://www.domain.com/admin 登录初始化登录用户名:admin 密码:password可视化日志管理路由 https://www.domain.com/log-viewer务必在登录成功后修改密码其他Vhost-Apache配置<VirtualHost *:80> DocumentRoot "/var/www/html/Pear-Admin-Laravel/public" ServerName www.domain.com ErrorLog "logs/site1-error.log" CustomLog "logs/site1-access.log" common <Directory "/var/www/html/HBAdmin/public"> Options FollowSymLinks AllowOverride All Require all granted </Directory> </VirtualHost>Vhost-Nginx配置server { listen 80; server_name www.domain.com; root /var/www/html/Pear-Admin-Laravel/public; index index.html index.htm index.php; add_header X-Frame-Options "SAMEORIGIN"; add_header X-XSS-Protection "1; mode=block"; add_header X-Content-Type-Options "nosniff"; charset utf-8; location / { try_files $uri $uri/ /index.php?$query_string; } location = /favicon.ico { access_log off; log_not_found off; } location = /robots.txt { access_log off; log_not_found off; } location ~ .php$ { try_files $uri =404; root /var/www/html/Pear-Admin-Laravel/public; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi.conf; } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }redis安装cd ~ wget https://download.redis.io/releases/redis-6.2.5.tar.gz tar xzf redis-6.2.5.tar.gz cd redis-6.2.5 make make install PREFIX=/usr/local/redis cd /usr/local/redis/bin/ ll cp ~/redis-6.2.5/redis.conf ./ vim redis.conf #找到daemonize no 改为daemonize yes ./redis-server redis.conf #后台启动redis ps aux|grep redis #查看redis进程
2021年11月09日
943 阅读
0 评论
0 点赞
2021-10-13
vue常用的简单操作代码
vue常用的简单操作代码,vue清空对象,vue数组循环,vue删除数组元素,vue关闭当前页面并打开新页面,vue页面通过路由方式跳转时重新加载,vue替换数组中的指定元素,vue键盘事件
2021年10月13日
826 阅读
1 评论
0 点赞
2021-08-06
msyqldump导出表
导出全库方法mysqldump -uroot -p database > data.sql导出某几个表# 需要导出的表写在文件里 tables.txt scm_table1 scm_table2 scm_table3 scm_table4 scm_table5mysqldump -uroot -p database `cat tables.txt` > data.sql导出相同前缀的表# 需要导出的表写在文件里 tables.txt scm_table1 scm_table2 scm_table3 scm_table4 scm_table5mysqldump -uroot -p database `cat tables.txt` > data.sql导出查询的数据到文件select name,email from user where id>10 order by id desc INTO OUTFILE '/data.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n';
2021年08月06日
793 阅读
0 评论
0 点赞
2021-06-22
vue的输入值校验规则整理
1、是否合法IP地址export function validateIP(rule, value,callback) { if(value==''||value==undefined||value==null){ callback(); }else { const reg = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/; if ((!reg.test(value)) && value != '') { callback(new Error('请输入正确的IP地址')); } else { callback(); } } }2、是否手机号码或者固话export function validatePhoneTwo(rule, value, callback) { const reg = /^((0\d{2,3}-\d{7,8})|(1[34578]\d{9}))$/;; if (value == '' || value == undefined || value == null) { callback(); } else { if ((!reg.test(value)) && value != '') { callback(new Error('请输入正确的电话号码或者固话号码')); } else { callback(); } } }3、是否固话export function validateTelphone(rule, value,callback) { const reg =/0\d{2,3}-\d{7,8}/; if(value==''||value==undefined||value==null){ callback(); }else { if ((!reg.test(value)) && value != '') { callback(new Error('请输入正确的固定电话)')); } else { callback(); } } }4、是否手机号码export function validatePhone(rule, value,callback) { const reg =/^[1][3-9][0-9]{9}$/; if(value==''||value==undefined||value==null){ callback(); }else { if ((!reg.test(value)) && value != '') { callback(new Error('请输入正确的电话号码')); } else { callback(); } } }5、是否身份证号码export function validateIdNo(rule, value,callback) { const reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/; if(value==''||value==undefined||value==null){ callback(); }else { if ((!reg.test(value)) && value != '') { callback(new Error('请输入正确的身份证号码')); } else { callback(); } } }6、是否邮箱export function validateEMail(rule, value,callback) { const reg =/^([a-zA-Z0-9]+[-_\.]?)+@[a-zA-Z0-9]+\.[a-z]+$/; if(value==''||value==undefined||value==null){ callback(); }else{ if (!reg.test(value)){ callback(new Error('请输入正确的邮箱')); } else { callback(); } } }7、合法urlexport function validateURL(url) { const urlregex = /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/; return urlregex.test(url); }8、验证内容是否包含英文数字以及下划线export function isPassword(rule, value, callback) { const reg =/^[_a-zA-Z0-9]+$/; if(value==''||value==undefined||value==null){ callback(); } else { if (!reg.test(value)){ callback(new Error('仅由英文字母,数字以及下划线组成')); } else { callback(); } } }9、自动检验数值的范围export function checkMax20000(rule, value, callback) { if (value == '' || value == undefined || value == null) { callback(); } else if (!Number(value)) { callback(new Error('请输入[1,20000]之间的数字')); } else if (value < 1 || value > 20000) { callback(new Error('请输入[1,20000]之间的数字')); } else { callback(); } }10、验证数字输入框最大数值export function checkMaxVal(rule, value,callback) { if (value < 0 || value > 最大值) { callback(new Error('请输入[0,最大值]之间的数字')); } else { callback(); } }11、验证是否1-99之间export function isOneToNinetyNine(rule, value, callback) { if (!value) { return callback(new Error('输入不可以为空')); } setTimeout(() => { if (!Number(value)) { callback(new Error('请输入正整数')); } else { const re = /^[1-9][0-9]{0,1}$/; const rsCheck = re.test(value); if (!rsCheck) { callback(new Error('请输入正整数,值为【1,99】')); } else { callback(); } } }, 0); }12、验证是否整数export function isInteger(rule, value, callback) { if (!value) { return callback(new Error('输入不可以为空')); } setTimeout(() => { if (!Number(value)) { callback(new Error('请输入正整数')); } else { const re = /^[0-9]*[1-9][0-9]*$/; const rsCheck = re.test(value); if (!rsCheck) { callback(new Error('请输入正整数')); } else { callback(); } } }, 0); }13、验证是否整数,非必填export function isIntegerNotMust(rule, value, callback) { if (!value) { callback(); } setTimeout(() => { if (!Number(value)) { callback(new Error('请输入正整数')); } else { const re = /^[0-9]*[1-9][0-9]*$/; const rsCheck = re.test(value); if (!rsCheck) { callback(new Error('请输入正整数')); } else { callback(); } } }, 1000); }14、 验证是否是[0-1]的小数export function isDecimal(rule, value, callback) { if (!value) { return callback(new Error('输入不可以为空')); } setTimeout(() => { if (!Number(value)) { callback(new Error('请输入[0,1]之间的数字')); } else { if (value < 0 || value > 1) { callback(new Error('请输入[0,1]之间的数字')); } else { callback(); } } }, 100); }15、 验证是否是[1-10]的小数,即不可以等于0export function isBtnOneToTen(rule, value, callback) { if (typeof value == 'undefined') { return callback(new Error('输入不可以为空')); } setTimeout(() => { if (!Number(value)) { callback(new Error('请输入正整数,值为[1,10]')); } else { if (!(value == '1' || value == '2' || value == '3' || value == '4' || value == '5' || value == '6' || value == '7' || value == '8' || value == '9' || value == '10')) { callback(new Error('请输入正整数,值为[1,10]')); } else { callback(); } } }, 100); }16、验证是否是[1-100]的小数,即不可以等于0export function isBtnOneToHundred(rule, value, callback) { if (!value) { return callback(new Error('输入不可以为空')); } setTimeout(() => { if (!Number(value)) { callback(new Error('请输入整数,值为[1,100]')); } else { if (value < 1 || value > 100) { callback(new Error('请输入整数,值为[1,100]')); } else { callback(); } } }, 100); }17、验证是否是[0-100]的小数export function isBtnZeroToHundred(rule, value, callback) { if (!value) { return callback(new Error('输入不可以为空')); } setTimeout(() => { if (!Number(value)) { callback(new Error('请输入[1,100]之间的数字')); } else { if (value < 0 || value > 100) { callback(new Error('请输入[1,100]之间的数字')); } else { callback(); } } }, 100); }18、验证端口是否在[0,65535]之间export function isPort(rule, value, callback) { if (!value) { return callback(new Error('输入不可以为空')); } setTimeout(() => { if (value == '' || typeof(value) == undefined) { callback(new Error('请输入端口值')); } else { const re = /^([0-9]|[1-9]\d|[1-9]\d{2}|[1-9]\d{3}|[1-5]\d{4}|6[0-4]\d{3}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])$/; const rsCheck = re.test(value); if (!rsCheck) { callback(new Error('请输入在[0-65535]之间的端口值')); } else { callback(); } } }, 100); }19、验证端口是否在[0,65535]之间,非必填,isMust表示是否必填export function isCheckPort(rule, value, callback) { if (!value) { callback(); } setTimeout(() => { if (value == '' || typeof(value) == undefined) { //callback(new Error('请输入端口值')); } else { const re = /^([0-9]|[1-9]\d|[1-9]\d{2}|[1-9]\d{3}|[1-5]\d{4}|6[0-4]\d{3}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])$/; const rsCheck = re.test(value); if (!rsCheck) { callback(new Error('请输入在[0-65535]之间的端口值')); } else { callback(); } } }, 100); }20、小写字母export function validateLowerCase(val) { const reg = /^[a-z]+$/; return reg.test(val); }22、两位小数验证const validateValidity = (rule, value, callback) => { if (!/(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/.test(value)) { callback(new Error('最多两位小数!!!')); } else { callback(); } };23、是否大写字母export function validateUpperCase(val) { const reg = /^[A-Z]+$/; return reg.test(val); }24、是否大小写字母export function validatAlphabets(val) { const reg = /^[A-Za-z]+$/; return reg.test(val); }25、密码校验export const validatePsdReg = (rule, value, callback) => { if (!value) { return callback(new Error('请输入密码')) } if (!/^(?![\d]+$)(?![a-zA-Z]+$)(?![^\da-zA-Z]+$)([^\u4e00-\u9fa5\s]){6,20}$/.test(value)) { callback(new Error('请输入6-20位英文字母、数字或者符号(除空格),且字母、数字和标点符号至少包含两种')) } else { callback() } }26、中文校验export const validateContacts = (rule, value, callback) => { if (!value) { return callback(new Error('请输入中文')) } if (!/^[\u0391-\uFFE5A-Za-z]+$/.test(value)) { callback(new Error('不可输入特殊字符')) } else { callback() } }27、身份证校验export const ID = (rule, value, callback) => { if (!value) { return callback(new Error('身份证不能为空')) } if (! /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(value)) { callback(new Error('请输入正确的二代身份证号码')) } else { callback() } }`28、 账号校验export const validateCode = (rule, value, callback) => { if (!value) { return callback(new Error('请输入账号')) } if (!/^(?![0-9]*$)(?![a-zA-Z]*$)[a-zA-Z0-9]{6,20}$/.test(value)) { callback(new Error('账号必须为6-20位字母和数字组合')) } else { callback() } }29 、纯数字校验export const validateNumber = (rule, value, callback) => { let numberReg = /^\d+$|^\d+[.]?\d+$/ if (value !== '') { if (!numberReg.test(value)) { callback(new Error('请输入数字')) } else { callback() } } else { callback(new Error('请输入值')) } }30、最多一位小数const onePoint = (rule, value, callback) => { if (!/^[0-9]+([.]{1}[0-9]{1})?$/.test(value)) { callback(new Error('最多一位小数!!!')); } else { callback(); } };31、大于0的所有数字const onePoint = (rule, value, callback) => { if (!/^[0-9]+([.]{1}[0-9]{1})?$/.test(value)) { callback(new Error('最多一位小数!!!')); } else { callback(); } };
2021年06月22日
1,662 阅读
2 评论
0 点赞
2021-05-28
VUE `ERR_CONNECTION_TIMED_OUT`的解决办法
错误vue项目运行后出现如下错误GET http://192.168.1.13:9527/sockjs-node/info?t=1538257166715 net::ERR_CONNECTION_TIMED_OUT sockjs.js?9be2:1605运行系统: macOS解决在vue.config.js中添加如下配置module.exports = { devServer: { host: 'localhost' } };
2021年05月28日
1,628 阅读
0 评论
0 点赞
2021-05-25
Laravel 数据迁移字段类型&字段长度综合表
Laravel 数据迁移字段类型&字段长度综合表数值类型命令大小描述范围用途最大存储单位$table->tinyInteger('votes');1 字节相当于 TINYINT(-128,127)小整数值127b$table->tinyIncrements('id');1 字节相当于 自动递增 UNSIGNED TINYINT(0,255)小整数值255b$table->unsignedTinyInteger('votes');1 字节相当于 不递增 UNSIGNED TINYINT(0,255)小整数值255b$table->smallInteger('votes');2 字节相当于 SMALLINT(-32 768,32 767)大整数值31.99kb$table->unsignedSmallInteger('votes');2 字节相当于 不递增 UNSIGNED SMALLINT(0,65 535)大整数值63.99kb$table->mediumInteger('votes');3 字节相当于 MEDIUMINT(-8 388 608,8 388 607)大整数值 $table->unsignedMediumInteger('votes');3 字节相当于 Unsigned MEDIUMINT(0,16 777 215)大整数值 $table->integer('votes');4 字节相当于 INTEGER(-2 147 483 648,2 147 483 647)大整数值 $table->increments('id');4 字节递增的 ID (主键),相当于「UNSIGNED INTEGER」(0,4 294 967 295)大整数值 $table->bigInteger('votes');8 字节相当于 BIGINT(-9 233 372 036 854 775 808,9 223 372 036 854 775 807)极大整数值 $table->unsignedBigInteger('votes');8 字节相当于 UNSIGNED BIGINT(0,18 446 744 073 709 551 615)极大整数值 $table->float('amount', 8, 2);4 字节相当于带有精度与基数 FLOAT(-3.402 823 466 E+38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38)单精度浮点数值 $table->double('column', 8, 2);8 字节相当于带有精度与基数 DOUBLE(-1.797 693 134 862 315 7 E+308,-2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308)双精度浮点数值 $table->decimal('amount', 8, 2);对DECIMAL(M,D)相当于带有精度与基数 DECIMAL依赖于M和D的值小数值 字符串类型类型大小描述用途$table->char('name', 4);0-255字节相当于带有长度的 CHAR定长字符串$table->string('name', 100);0-65535 字节相当于带长度的 VARCHAR变长字符串TINYBLOB0-255字节 不超过 255 个字符的二进制字符串TINYTEXT0-255字节 短文本字符串$table->binary('data');0-65 535字节相当于 BLOB二进制形式的长文本数据$table->text('description');0-65 535字节相当于 TEXT长文本数据MEDIUMBLOB0-16 777 215字节 二进制形式的中等长度文本数据$table->mediumText('description');0-16 777 215字节相当于 MEDIUMTEXT中等长度文本数据LONGBLOB0-4 294 967 295字节 二进制形式的极大文本数据$table->longText('description');0-4 294 967 295字节相当于 LONGTEXT极大文本数据日期和时间类型命令大小描述范围格式用途$table->date('created_at');3字节相当于 DATE1000-01-01/9999-12-31YYYY-MM-DD日期值$table->time('sunrise');3字节相当于 TIME'-838:59:59'/'838:59:59'HH:MM:SS时间值或持续时间$table->year('birth_year');1字节相当于 YEAR1901/2155YYYY年份值$table->dateTime('created_at');8字节相当于 DATE1000-01-01 00:00:00/9999-12-31 23:59:59YYYY-MM-DD HH:MM:SS混合日期和时间值$table->timestamp('added_on');4字节相当于 TIMESTAMP1970-01-01 00:00:00/2038 结束时间是第 2147483647 秒,北京时间 2038-1-19 11:14:07,格林尼治时间 2038年1月19日 凌晨 03:14:07YYYYMMDD HHMMSS混合日期和时间值,时间戳//================================================================================= /* 表引擎 */ $table->engine = 'InnoDB'; /* 类型 */ // - 数字 $table->bigInteger('id'); $table->integer('id'); $table->mediumInteger('id'); $table->smallInteger('id'); $table->tinyInteger('id'); $table->decimal('balance', 15, 8); $table->float('balance'); $table->double('balance', 15, 8); $table->real('balance'); // - 时间 $table->date('created_at'); $table->dateTime('created_at'); $table->timeStamp('created_at'); $table->time('sunrise'); // - 字符串 $table->char('name', 4); // 等同于 VARCHAR $table->string('name'); // 等同于 VARCHAR(100) $table->string('name', 100); $table->text('description'); $table->mediumText('description'); $table->longText('description'); // 等同于 BLOB $table->binary('data'); $table->enum('choices', ['foo', 'bar']); $table->boolean('confirmed'); // - 不经常用的 $table->json('options'); // 等同于数据库中的 JSON 类型 $table->jsonb('options'); // 等同于数据库中的 JSONB 类型 $table->uuid('id'); // 等同于数据库的UUID // 自增ID,类型为 bigint $table->bigIncrements('id'); // 自增ID,类型为 int $table->increments('id'); // 添加一个 INTEGER类型的 taggable_id 列和一个 STRING类型的 taggable_type列 $table->morphs('taggable'); // 和 timestamps() 一样,但允许 NULL 值 $table->nullableTimestamps('created_at'); // 添加一个 'remember_token' 列:VARCHAR(100) NULL $table->rememberToken(); // 添加 'created_at' 和 'updated_at' $table->timeStamps(); // 新增一个 'deleted_at' 列,用于 '软删除' $table->softDeletes(); /* 列修改器 */ ->first(); // 将列置于表第一个列(仅限于MYSQL) ->after('列名'); // 将列置于某一列后(仅限于MYSQL) ->nullable(); // 允许列为NULL ->defalut($value); // 指定列默认值 ->unsigned(); // 设置整型列为 UNSIGNED /* 修改列 需安装 doctrine/dbal,composer require doctrine/dbal */ // change() - 修改列 $table->string('name', 30)->nullable()->change(); // renameColumn() - 重命名列 $table->renameColumn('name', 'title'); /* 删除列 需安装 doctrine/dbal,composer require doctrine/dbal */ // 删除单个列 $table->dropColumn('name'); // 删除多个列 $table->dropColumn(['name', 'age']); /* 创建索引 * 每种索引,都有3种方式: * 一个string参数 * 一个array参数 - 组合索引 * 2个参数 - 允许自定义索引名 * 注意: * laravel自动分配的索引名: * 表名_列名_索引类型:users_mobile_unique // users表的mobile字段为unique 索引 */ $table->primary('id'); // 主键索引 $table->primary(['first', 'last']); // 混合索引(这个不太清楚) $table->primary('first', 'first_primary_index']); // 自定义索引名 $table->unique('mobile'); // 唯一索引 $table->index('state'); // 普通索引 /* 删除索引 */ $table->dropPrimary('索引名') $table->dropUnique('索引名') $table->dropIndex('索引名') /* 外键约束 * 注意: * laravel自动分配的外键名: * 表名_列名_foreign:posts_user_id_foreign // posts表的user_id字段添加foreign */ // 添加外键,当前表的user_id,外键关联users表的id列 $table->foreign('user_id')->references('id')->on('users'); // 约束 'on delete' 和 'on update' 时,才关联外键 $table->foreign('user_id')->references('id')->on('users')->onDelete; // 删除外键 $table->dropForeign('posts_user_id_foreign');
2021年05月25日
844 阅读
0 评论
0 点赞
2021-02-26
好站推荐-https://wangchujiang.com/linux-command/
介绍这是一个GitHub开源项目,是 Linux 命令大全搜索工具,截至当前已经收集了 575 个 Linux 命令,主要内容包含:Linux 基础命令分类、Linux 学习资源整理(社区网站、知识相关、软件工具、开源镜像站点、游戏玩家发行版)等;传送门点击进入https://wangchujiang.com/linux-command/遨游方法进入网站后,在输入框中输入你想要了解的命令,搜索即可看到命令的简单介绍2.点击命令词条后进入命令详情可查看命令的详细介绍和实例
2021年02月26日
1,598 阅读
0 评论
0 点赞
2021-02-26
好站推荐-https://www.explainshell.com/
介绍这个网站是完完全全的linux工具站, explainshell 是一个可以解析 Linux 命令的网站,它可以给出命令的解释和其参数的解释。对 Linux 小白来说,可以有效的将一条长命令进行拆分加以理解,很有帮助。。PS:貌似这个站点需要科学上网传送门点击进入https://www.explainshell.com/遨游方法进入网站后,只有一个输入框,输入你不了解的命令后提交就行啦,看下图
2021年02月26日
704 阅读
0 评论
0 点赞
2021-02-07
php时间格式化
用法:date(格式,[时间]); 如果没有时间参数,则使用当前时间. 格式是一个字符串示例<?php echo "时间格式1:".date("Y-m-d H:i:s ")."<br>";// 2020-12-01 10:26:31 echo "时间格式2:".date("y-M-D h:i:S ")."<br>";// 12-Jun-Sat 10:43:th echo "月份,英文全名:".date("F")."<br>";// June echo "月份,二位数字,补零:".date("m")."<br>";// 06 echo "月份,二位数字,不补零:".date("n")."<br>";// 6 echo "月份,三个英文:".date("M")."<br>";// Jun echo "星期几,英文全名:".date("l")."<br>";// Saturday echo "星期几,三个英文:".date("D")."<br>";// Sat echo "星期几,数字型:".date("w")."<br>";// 6 ?>其他参数解释结果值Y年,四位数字;"1999"y年,二位数字;"99"z一年中的第几天;"0" 至 "365"F月份,英文全名;"January"m月份,二位数字,若不足二位则在前面补零;"01" 至 "12"n月份,二位数字,若不足二位则不补零;"1" 至 "12"M月份,三个英文字母;"Jan"t指定月份的天数;"28" 至 "31"d几日,二位数字,若不足二位则前面补零;"01" 至 "31"j几日,二位数字,若不足二位不补零;"1" 至 "31"h12 小时制的小时;"01" 至 "12"H24 小时制的小时;"00" 至 "23"g12 小时制的小时,不足二位不补零;"1" 至 12"G24 小时制的小时,不足二位不补零;"0" 至 "23"i分钟;"00" 至 "59"s秒;"00" 至 "59"S字尾加英文序数,二个英文字母;"th","nd"U总秒数1970-01-01年至今的总秒数D星期几,三个英文字母;"Fri"l星期几,英文全名;"Friday"w数字型的星期几,"0"(星期日) 至 "6"(星期六)a上午或下午"am" 或是 "pm"A上午或下午"AM" 或是 "PM"时间戳//时间戳格式化 $time = time(); 时间戳格式 date("Y-m-d H:i:s",strtotime($time)); //2020-11-30 16:46:50 date("Y-m-d H:i:s"); //2017-11-30 16:46:50
2021年02月07日
662 阅读
0 评论
0 点赞
1
2
...
8