PHP
文章平均质量分 55
PHP是世界上最好的编程语言。
相逢不晚何必匆匆
一分耕耘,一分收获。一艺之成,当尽毕生之力。
展开
-
关于 FastAdmin 对数据表时间字段不能自动维护的解决办法
两个时间字段,会在添加数据和更新数据时自动维护这两个字段,不需要手动维护,这其实是。类型,在使用一键 CRUD 时,生成的增删改查在维护时间字段时,会出现问题。完成这两处的修改即可自动维护添加时间和更新时间字段。自动写入时间戳字段的配置生成后默认是。开发框架时,如果数据表中存在。类型,但是如果字段使用的是。,和数据表中的数据类型一致。这两个字段的数据类型支持。原创 2023-05-11 15:26:47 · 1023 阅读 · 1 评论 -
M1 芯片 MacBook 结合 MAMP 集成环境配置 PHP 环境变量
的安装目录,这里是采用 MAMP 集成环境安装的,所以。将此路径加入到环境变量中即可(注意每个人的。的安装路径如下,准确地说是可执行文件的。MacOS Catalina 版本之后。然后再打开配置文件进行修改,要加入。环境变量,首先得知道。原创 2022-11-18 11:56:53 · 1617 阅读 · 3 评论 -
在 ThinkPHP 中使用 JWT 签发 Token
JWT,可以看成是一种Token签发方案。Token通常叫做认证令牌,用于客户端和服务端在交互时的身份认证。JWT数据量小,传输速度快。使用json数据格式,可跨语言。即签即发,不需要在服务端保存。适合移动端。更多关于 JWT 的信息可访问官网查看 >>>原创 2022-11-07 14:36:33 · 1557 阅读 · 0 评论 -
猿创征文|学习记录之 PHP 中的面向对象编程
面向对象,准确地说应该叫做 “面向对象编程”。面向对象编程是一种计算机编程架构,它能使代码更加简洁,更易于维护,并且具有更强的可重用性。原创 2022-09-01 20:20:36 · 1018 阅读 · 1 评论 -
在 PhpStudy 中配置 Composer
一、在 PhpStudy 中安装 Composer在【软件管理】-【工具】-【composer】中安装。二、配置 Composer 为全局可用找到 Composer 的安装路径,位于 PhpStudy 的安装目录中,例如:D:\phpstudy_pro\Extensions\composer1.8.5复制以下两个文件:粘贴到当前PHP版本所在目录中,与 php.exe 同级:如果你的PHP版本与此不同,则按照实际目录存放。修改 composer.bat 文件内的内容为:@php "原创 2021-09-24 11:41:16 · 3082 阅读 · 0 评论 -
Windows 系统配置 PHP 环境变量(PhpStudy集成环境)
打开系统的【高级系统设置】,点击【环境变量】。选择【系统变量】中的【Path】,点击编辑。点击【新建】,填入当前 PHP 版本 php.exe 所在目录,点击确定。验证有效性打开命令行窗口,输入 php -v 查看。出现 PHP 的版本信息,则为配置成功。...原创 2021-09-24 11:39:50 · 3691 阅读 · 0 评论 -
FastAdmin数据列表根据某个字段的值动态显示与隐藏按钮
一、需求在后台管理中,我们有时会遇到根据数据表中某个字段的值来判断显示某个可操作的按钮。比如一张用户表中,存在一个status字段,在列表显示时,如果该字段的值等于1,显示拉黑按钮,等于2则显示恢复按钮。二、代码实现在FastAdmin快速开发框架中,列表数据由相应的JavaScript文件渲染而成,假如控制器为User.php,则此控制对应的JS文件位置在public/assets/js/backend/user/user.js。在操作一栏添加两个按钮,分别为拉黑和恢复,使用visible函数判原创 2021-07-04 19:54:35 · 6228 阅读 · 23 评论 -
PHP基础 + Ajax实现三级联动
本文目录一、本案例涉及的知识二、页面准备三、选择学校查询班级四、选择班级查询学生五、效果图六、源代码1. MySQL2. PHP三级联动是我们经常见的一个功能,最经典的案例是省市区三级,第一个下拉框选择一个省份,第二个下拉框出现该省份下的城市,第二个下拉框选择一个城市,第三个下拉框出现该城市下的县区。下面的案例我们采用学校、班级、学生三级,进行联动查询。文章最后附数据库与本案例源代码。一、本案例涉及的知识HTMLjQuery ajaxPHPMySQL二、页面准备三级联动中的第一级是需原创 2021-06-22 20:39:52 · 1372 阅读 · 3 评论 -
PHP上传文件至腾讯云对象存储
一、开通腾讯云对象存储服务点击前往腾讯云官网开通,开通后前往控制台获取 secretId 和 secretKey 。二、安装 PHP SDK在你项目的 composer.json 文件中加入:{ "require": { "qcloud/cos-sdk-v5": ">=2.0" }}执行 composer install 进行安装。三、代码实现<?phpnamespace app\api\common\controller;use Qcloud\Co原创 2021-06-04 20:08:14 · 1339 阅读 · 2 评论 -
使用 PHP 实现简单的图片上传
一、HTML 表单准备<!doctype html><html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <meta name="Author" content=""> <meta name="Keywords" content=""> <meta name="Des原创 2021-04-24 22:05:27 · 3885 阅读 · 3 评论 -
PHP + MySQL 实现数据分页显示
一、连接数据库$connect = mysqli_connect('localhost', '用户名', '密码', '数据库名') or die('数据库连接失败');mysqli_set_charset($connect, 'utf8');分页其实利用的是MySQL中limit关键字来实现的,例如我们查询一个表中的前两条数据:select * from student limit 0, 2limit后需要两个参数,第一个参数代表从第几条开始取;第二个参数代表一次取几条。那么上述SQL语句原创 2021-04-23 14:04:01 · 6416 阅读 · 16 评论 -
PHP 对接阿里云短信服务完整流程
本文目录一、开通阿里云短信服务二、获取阿里云访问密钥(一)打开 AccessKey 管理(二)创建 AccessKey三、创建短信签名和短信模板四、下载 PHP SDK(仅支持5.5以上PHP版本)五、修改DEMO程序原文件修改 SmsDemo.php 文件六、短信发送(一)引入文件(二)发送短信七、更多一、开通阿里云短信服务阿里云短信服务管理控制台二、获取阿里云访问密钥阿里云访问秘钥是阿里云为用户使用 API(非控制台)来访问其云资源设计的“安全口令”。您可以用它来签名 API 请求内容以通过服原创 2020-12-14 15:41:36 · 4962 阅读 · 8 评论 -
MacOS 环境下安装 PHP Redis 扩展
1、下载 phpredis 扩展安装包下载地址一下载地址二2、解压后得到 redis 安装包目录3、使用终端进入到 redis 安装包目录(示例目录,个人略有不同)cd /Applications/MAMP/bin/php/php7.1.19/include/php/phpredis-5.3.24、执行编译安装(示例目录和PHP版本,个人略有不同)/Applications/MAMP/bin/php/php7.1.19/bin/phpize./configure --with-php原创 2020-12-09 08:03:14 · 636 阅读 · 0 评论 -
PHP递归函数 + Layui树形组件实现无限极分类
1、本文以全国省市区为例分类数据数据来源:全国省市区MySQL数据表2、递归分类数据demo.php<?php$connect = mysqli_connect('localhost', 'root', 'root', '你的数据库名称');if (!$connect) { echo '数据库连接失败'; exit;}$sql = "SELECT * FROM area";$query = mysqli_query($connect, $sql);$data = [原创 2020-12-07 14:52:46 · 921 阅读 · 0 评论 -
Vue+Ajax+PHP实现文件上传
1、HTML代码<input type="file" @change="upload($event)"/><button @click="add()">提交</button>2、JavaScript代码<script type="text/javascript" src="js/vue.min.js"></script><script type="text/javascript"> var vm = new Vue({原创 2020-11-11 11:55:55 · 1148 阅读 · 4 评论 -
PHP标准冒泡法排序
// 要排序的数组$arr = [8, 2, 13, 11, 50, 45];// 计算元素个数$count = count($arr);// 冒泡排序(由小到大)for ($i = 0; $i < $count; $i++) { for ($j = $i + 1; $j < $count; $j++) { if ($arr[$i] > $arr[$j]) { $t = $arr[$i]; $arr[$i]原创 2020-07-15 17:23:43 · 277 阅读 · 0 评论 -
FastAdmin生成CRUD不显示列表的问题
检查数据表中是否有字段名和表名相同原创 2020-06-28 10:25:18 · 1259 阅读 · 0 评论 -
使用 PhpSpreadsheet 将 Excel 表格数据导入到数据库
1、安装 PhpSpreadsheetcomposer require phpoffice/phpspreadsheet2、控制器代码public function importExcel(){ // 接收文件 $file = $_FILES['file']['tmp_name']; // 创建读操作 $reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader('Xlsx'); // 打开文件、载入原创 2020-06-04 17:15:04 · 826 阅读 · 0 评论 -
ThinkPHP 使用 PhpSpreadsheet 导出 Excel 文件
1、安装 PhpSpreadsheetcomposer require phpoffice/phpspreadsheet2、控制器代码public function exportExcel(){ // 查询要导出的数据 $data = Db::name('student')->select(); // 实例化 $spreadsheet = new Spreadsheet(); // 获取活动工作薄 $sheet = $spreadsheet-&原创 2020-06-02 16:30:06 · 1245 阅读 · 2 评论 -
修改 ThinkPHP5 分页功能
1、目标效果2、HTML 代码<div class="page">{$page}</div>3、PHP 代码$where = [];$admin = AdminModel::where($where)->paginate(3); // 每页 3 条数据$page = $admin->render();return $this->fetch...原创 2020-04-13 11:33:06 · 265 阅读 · 0 评论 -
PHP对接小程序城市服务实名信息校验接口
在将请求数据进行 json_encode 的时候,一定要加第二个参数 JSON_UNESCAPED_UNICODE 以字面编码多字节 Unicode 字符(默认是编码成 \uXXXX)。 自 PHP 5.4.0 起生效。否则不会校验成功!原创 2020-04-17 10:49:43 · 974 阅读 · 0 评论 -
PHP 使用 CURL 模拟发送 JSON 数据请求
1、curl 方法function curlRequest($url, $headers = [], $body = [], $method = "GET"){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); /...原创 2020-04-17 10:06:22 · 784 阅读 · 1 评论 -
ThinkPHP5 + Mpdf 生成 PDF 文档
1、服务器环境Apache2、类库下载composer require mpdf/mpdf3、控制器代码use Mpdf\Mpdf;public function createPdf(){ $mpdf = new Mpdf(); $mpdf->autoScriptToLang = true; $mpdf->autoLangToFont = true; $ht...原创 2020-04-02 15:36:14 · 1682 阅读 · 3 评论 -
PHP实现文件下载功能
1、下载前检查文件是否存在$file_dir = 'test.zip';if(!file_exists($file_dir)) { echo '抱歉,文件丢失';}2、下载方法public function download(){ $file_dir = 'test.zip'; //打开文件 $file1 = fopen($file_dir, 'r'); /...原创 2020-03-09 15:04:29 · 513 阅读 · 1 评论 -
ThinkPHP5 上传文件到七牛云对象存储
1、准备工作注册七牛云账号,可以有免费的10G储存空间。到 个人中心-密钥管理 查看 AccessKey 和 SecretKey。2、SDK 下载命令行进入到项目根目录,使用 composer 下载文件。下载成功会在 vendor 目录下多出一个 qiniu 目录。composer require qiniu/php-sdk3、控制器代码<?phpnamespace ap...原创 2020-03-02 19:40:10 · 1245 阅读 · 1 评论 -
Composer 使用阿里云镜像
1、composer 升级composer self-update2、全局配置(推荐)composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/3、取消全局配置composer config -g --unset repos.packagist3、仅用于单个项目composer ...原创 2020-03-01 21:11:14 · 1797 阅读 · 1 评论 -
ThinkPHP5对接阿里云短信服务
1、下载阿里云 PHP SDK点击前往下载下载完成放在 extend 目录下2、修改文件修改api_demo内SmsDemo.php的命名空间namespace aliyun\api_demo;此方法去掉 static 改为非静态方法public function sendSms($mobile, $code){ // 初始化SendSmsRequest实例用于设置发...原创 2020-02-11 20:34:19 · 1219 阅读 · 2 评论 -
ThinkPHP上传文件到阿里云 OSS 对象存储
阿里云对象存储OSS(Object Storage Service)是一款海量、安全、低成本、高可靠的云存储服务,提供99.9999999999%(12个9)的数据持久性,99.995%的数据可用性。多种存储类型供选择,全面优化存储成本。原创 2020-02-08 11:05:51 · 4139 阅读 · 0 评论 -
PHP + QQ邮箱发送邮箱验证码
1、说明PHPMailer 需要 PHP 的 sockets 扩展支持,而登录 QQ 邮箱 SMTP 服务器则必须通过 SSL 加密的, PHP 还得包含 openssl 的支持。查看PHP 是否开启 ssl :检查 php.ini 中;extension=php_openssl.dll 是否存在, 如果存在的话去掉前面的注释符 ‘;’, 如果不存在这行,那么添加 extension...原创 2020-01-27 17:00:12 · 5208 阅读 · 10 评论 -
Mac 环境下安装 Composer
1、快捷键 command+shift+G 进入 /usr/local/bin 目录,如果 local 目录下没有 bin 目录需要创建2、使用终端命令也进入到 /usr/local/bin 目录下3、执行命令curl -sS -k https://getcomposer.org/installer | php出现以下页面代表下载成功随后执行移动文件命令以实现全局可用命令4、输入...原创 2020-01-11 16:04:41 · 753 阅读 · 1 评论 -
PHP 实现基于用户 token 验证的防异处登录
1、使用场景某些业务场景需限定一个账号只能同时在一个设备登录。防异处登录多用于 APP 中,需配合 API 接口使用。基于 API 接口实现,在实际线上生产环境中,API 接口是需要做验证的,即不是随便被请求就可以拿到数据的。需要对包括但不限于对用户登录成功返回的标识、token等的验证。2、实现思路用户注册完成后每次登录时,随机生成一个随机码再把用户账号+密码+随机码按照一定顺序和...原创 2020-01-07 17:23:21 · 2212 阅读 · 1 评论 -
UNI + PHP 实现图片上传(支持多图)
public function upload(){ $files = $_FILES; $imageArr = Array(); foreach ($files as $file) { $imageName = $file['name']; //后缀名 $ext = strtolower(substr(strrchr($imageName,'.'),1));...原创 2020-01-03 14:10:16 · 1023 阅读 · 1 评论 -
利用微软API实现文档在线预览
1、需要将文件上传到自己的服务器并生成可访问的文档路径。2、你的域名。$webUrl = www.xxxxx.com;3、将除域名之外的文件所在路径部分(包含文件名)进行urlencode。$filePathEncode = urlencode('/uploads/files/1.doc');4、跳转到微软API接口$this->redirect('http://view.o...原创 2020-01-03 14:07:50 · 2108 阅读 · 3 评论 -
ThinkPHP5文件上传
1、文件接收$file = request()->file('file');2、文件保存public static function upload($file){ // 保存路径 $dir = ROOT_PATH . 'public' . DS . 'uploads/images'; if (!file_exists($dir)) { mkd...原创 2020-01-03 13:42:26 · 635 阅读 · 1 评论 -
PHP PSR-2 代码风格规范(中文版)
PHP PSR-2 代码风格规范(中文版)点击查看原创 2019-12-31 10:17:47 · 512 阅读 · 1 评论 -
PHP对APP支付宝支付异步回调的处理
1、接收支付宝异步通知参数这里以 thinkphp5 为例$params = $this->request->post();2、验证签名是否正确// 如果支付成功if (!empty($params) && $params['trade_status'] == 'TRADE_SUCCESS') { // 验证签名 $aop = new AopClient...原创 2019-12-26 16:23:42 · 2056 阅读 · 1 评论 -
ThinkPHP5 对接 APP 支付宝支付
1、下载支付宝 SDK 放在 extend 目录下,需要修改一些文件的命名空间。可以直接下载我个人修改好的,解压放进去直接用即可。下载地址:下载支付宝 PHP SDK提取码:ht0d2、代码部分引入:use alipay\aop\AopClient;use alipay\aop\request\AlipayTradeAppPayRequest;向支付宝服务器发起订单:$aop ...原创 2019-12-26 16:12:53 · 1362 阅读 · 1 评论 -
ThinkPHP5 解决跨域
index.php 中添加//允许跨域header('Access-Control-Allow-Origin:*');// 响应类型header('Access-Control-Allow-Methods:*');// 响应头设置header('Access-Control-Allow-Headers:x-requested-with,content-type');...原创 2019-12-06 13:56:07 · 430 阅读 · 5 评论 -
ThinkPHP5给图片路径拼接站点域名的公共方法
controller:$subject = Db::name('subject')->select();$subject = addWebSiteUrl($subject, ['image', 'expression']);处理前查询结果:{ "id": 1, "module": 179, "group": 180, "image": "/uploads/images/20...原创 2019-12-06 10:21:07 · 2228 阅读 · 5 评论 -
PHP将文本写入到 txt 文件
可用于将一些无法打印的数据保存到 txt ,再查看数据结构。例如一些第三方的异步回调数据。//要保存的内容,最好转为json字符串$connect = json_encode($connect);//文件名称$file = 'log.txt';$fp = fopen($file, 'a');fwrite($fp, $connect);fclose($fp);...原创 2019-11-29 09:23:09 · 5983 阅读 · 1 评论