1、获取上传的文件

$file=$request->file(‘file’);

2、获取上传文件的文件名(带后缀,如 abc.png)

$filename=$file->getClientOriginalName();

3、获取上传文件的后缀(如 abc.png,获取到的为 png)

$fileextension=$file->getClientOriginalExtension();

4、获取上传文件的大小

$filesize=$file->getClientSize();

5、获取缓存在 tmp 目录下的文件名(带后缀,如 php8933.tmp)

$filaname=$file->getFilename();

6、获取上传的文件缓存在 tmp 文件夹下的绝对路径

$realpath=$file->getRealPath();

7、将缓存在 tmp 目录下的文件移到某个位置,返回的是这个文件移动过后的路径

$path=$file->move(path,newname);

move () 方法有两个参数,第一个参数是文件移到哪个文件夹下的路径,第二个参数是将上传的文件重新命名的文件名

8、检测上传的文件是否合法,返回值为 true 或 false

$file->isValid();

转自:https://learnku.com/articles/61077

$post = [
    'page' => 10,
    'b' => 200
];

$page = $post['page'] ?? 1;
// 等价于
$page = isset($post['page']) ? $post['page'] :1;

$page = $post['page'] ?: 1;
// 等价于
$page = $post['page'] ? $post['page'] :1;

// 这个是上传文件的方法 失败返回false
$res = $this->uploadfile();
$img_path = $res ?: '';

实际不上也就这两个常用:

$a??1;
$a?:1;

转自:https://learnku.com/articles/60741

1、xls
application/vnd.ms-excel
2、xlsx
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
3、ppt
application/vnd.ms-powerpoint
4、pptx
application/vnd.openxmlformats-officedocument.presentationml.presentation
5、doc
application/msword
6、docx
application/vnd.openxmlformats-officedocument.wordprocessingml.document
7、zip
application/x-zip-compressed
8、rar
application/x-zip-compressed
9、wmv
video/x-ms-wmv
10、mp3
audio/mpeg
11、mp4
video/mp4
12、gif
image/gif
13、jpg
image/jpeg
14、png
image/png
15、bmp
image/bmp
16、psd
application/octet-stream
17、ico
image/x-icon
18、7z
application/octet-stream
19、exe
application/octet-stream
20、avi
video/avi
21、rmvb
application/vnd.rn-realmedia-vbr
22、3gp
application/octet-stream
23、flv
application/octet-stream
24、wav
audio/wav
25、krc
application/octet-stream
26、lrc
application/octet-stream
27、txt
text/plain
28、pdf
application/pdf
29、chm
application/octet-stream
30、mdb
application/msaccess
31、sql
application/octet-stream
32、con
application/octet-stream
33、log
text/plain
34、dat
application/octet-stream
35、ini
application/octet-stream
36、php
application/octet-stream
37、html 和 htmhtm
text/html
38、ttf
application/octet-stream
39、fon
application/octet-stream
40、js
application/x-javascript
41、xml
text/xml
42、dll
application/octet-stream

转自:https://learnku.com/articles/60802

products商品表

字段名称 描述 类型 加索引缘由
id 自增长ID unsigned big int 主键
title SKU 名称 varchar
description SKU 描述 varchar
price SKU 价格 decimal
stock 库存 unsigne int
product_id 所属商品 id unsigne big int 外键

orders订单表

字段名称 描述 类型 加索引缘由
id 自增长ID unsigned big int 主键
no 订单流水号 varchar 唯一
user_id 下单的用户ID unsigned big int 外键
address JSON格式的收货地址 text
total_amount 订单总金额 decimal
remark 订单备注 text
paid_at 支付时间 datetime, null
payment_method 支付方式 varchar, null
payment_no 支付平台订单号 varchar, null
refund_status 退款状态 varchar
refund_no 退款单号 varchar, null 唯一
closed 订单是否已关闭 tinyint, default 0
reviewed 订单是否已评价 tinyint, default 0
ship_status 物流状态 varchar
ship_data 物流数据 text, null
extra 其他额外的数据 text, null

order_sku 订单项目名

字段名称 描述 类型 加索引缘由
id 自增长ID unsigned big int 主键
order_id 所属订单ID unsigned big int 外键
product_id 对应商品ID unsigned big int 外键
product_sku_id 对应商品SKU ID unsigned big int 外键
amount 数量 unsigned int
price 单价 decimal
rating 用户打分 unsigned int, null
review 用户评价 text
reviewed_at 评价时间 timestamp, null

// 加载opcache(需确认已安装opcache拓展)
zend_extension=opcache.so
// 开启opcache
opcache.enable = 1
// OPcache共享内存存储大小,单位MB
opcache.memory_consumption=1024 // 1G
// PHP使用了一种叫做字符串驻留,默认是4MB
opcache.interned_strings_buffer=32
// 这个选项用于控制内存中最多可以缓存多少个PHP文件,这个选项必须得设置得足够大,大于你的项目中的所有PHP文件的总和
opcache.max_accelerated_files=80000
// 设置缓存的过期时间(单位是秒),为0的话每次都要检查
opcache.revalidate_freq=3
// 从字面上理解就是“允许更快速关闭”
opcache.fast_shutdown=1
// CLI环境下,PHP启用OPcache
opcache.enable_cli=1