Php
文章平均质量分 70
php
Small-White-Phper
这个作者很懒,什么都没留下…
展开
-
PHP算法题猴子选大王最简单写法
1、题目:现有 n 只猴子围坐成一个圈,按顺时针方向从1到n编号。然后从1号猴子开始沿顺时针方向从1开始报数,报到m的猴子出局,继续从刚出局猴子的下一个位置重新从1开始报数,报到m猴子出局。如此循环重复,直至剩下一个猴子,它就是大王。2、算法:思路:利用数组队列, m 的直接从数组去除,不是 m 的排到数组队列的最后面,然后删除其在原数组中的位置; function findMonkeyKing($n,$m){ $monkeys = range(1, $n); $i = 0;原创 2021-08-26 18:23:19 · 388 阅读 · 0 评论 -
Laravel项目部署到线上需要注意的一些问题
Laravel项目部署到线上常见问题1 目录权限问题2 Nginx的配置文件的问题3 PHP扩展要记得开启4 git clone 缺少核心库5 git clone app_key的错误6 出现 The cipher and / or key length are invalid7 Laravel 中 seeder 执行失败准备部署 Laravel 应用到生产环境时,却出现了以下一些问题,你在本地上基本不会出现问题,但是到线上很多问题都出来了。整理了一些问题与bug,希望在你部署laravel项目的时候,如原创 2021-07-12 12:35:46 · 740 阅读 · 2 评论 -
PHP 接口的安全设计要素:Token,签名,时间戳
后端以api的方式将数据源呈现出来是目前的趋势,可以用在前后端分离的架构中,前后端分离之后,前后端人员能够更加专注于自己板块的东西;也可以用在后端与后端相互调用中。拿到接口后,前台就可以通过链接获取接口提供的数据,而返回的数据一般分为两种情况,xml和json,在这个过程中,服务器并不知道,请求的来源是什么,有可能是别人非法调用我们的接口,获取数据,因此就要使用安全验证。验证原理原理从图中可以看得很清楚,前台想要调用接口,需要使用几个参数生成签名。1 时间戳:当前时间2 随机数:随机生成的随机原创 2021-02-25 11:11:47 · 1018 阅读 · 0 评论 -
PHP 程序员该如何有效调试Bug
调试的定义:通过一定方法,在程序中找到并减少缺陷的数量,从而使其能正常工作。这里说一些如何调试PHP程序的经验。一、PHP自带的调试功能1、自带的报错功能两个名词:开发环境是开发人员在进行开发和调试的环境,生产环境是最终客户在用的线上环境;开发环境和生产环境要分开设置报错功能。(1)开发环境开发环境需要打开报错,以下是php.ini的配置项及其说明:; This directive sets the error reporting level.; Development Value:原创 2021-01-27 15:40:15 · 344 阅读 · 0 评论 -
Mysql 分库分表设计
一. 分表场景:对于大型的互联网应用来说,数据库单表的记录行数可能达到千万级甚至是亿级,并且数据库面临着极高的并发访问。采用Master-Slave复制模式的MySQL架构,只能够对数据库的读进行扩展,而对数据库的写入操作还是集中在Master上,并且单个Master挂载的Slave也不可能无限制多,Slave的数量受到Master能力和负载的限制。 因此,需要对数据库的吞吐能力进行进一步的扩展,以满足高并发访问与海量数据存储的需要!对于访问极为频繁且数据量巨大的单表来说,我们首先要做的就是减少单表的记录原创 2021-01-19 14:31:07 · 285 阅读 · 0 评论 -
PHP 用递归法和引用实现无限极分类
1、递归法实现将原始数组无限循环,按照层级向下找到子类并归类,找到一个删除一个,知道原始数组下最后一组数据function getChildTree($data, $id = 0) { //初始化儿子 $child = []; //循环所有数据找$id的儿子 foreach ($data as $key => $datum) { //找到儿子了 if ($datum['pid']原创 2020-12-22 14:37:30 · 194 阅读 · 0 评论 -
Linux 下 ThinkPhp 5 执行定时任务详解
在 application/crontab 下新建 command 目录,所有要执行的任务文件都放在这下面,然后在command下新建要执行的任务文件 Task.php![在这里插入图片描述](https://img-blog.csdnimg.cn/2020121020381647.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM4Mz原创 2020-12-10 20:55:07 · 515 阅读 · 0 评论 -
PHP laravel 微信 JsApi 支付详细过程
1 :下载微信支付 sdk(php),下载地址 https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=11_1 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20201210182644509.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM原创 2020-12-10 19:01:42 · 1334 阅读 · 2 评论 -
PhpStorm 快捷键大全
查询快捷键 CTRL+N 查找类 CTRL+SHIFT+N 查找文件,打开工程中的文件(类似于eclipse中的ctrl+shift+R),目的是打开当前工程下任意目录的文件 CTRL+SHIFT+ALT+N 查 找类中的方法或变量(JS) CIRL+B 找变量的来源,跳到变量申明处 CTRL+ALT+B 找所有的子类 CTRL+SHIFT+B 找变量的 类 CTRL+G 定位行,跳转行 CTRL+F 在当前窗口查找文本 CTRL+SHIFT+F 在指定路径查找文本转载 2020-10-13 10:16:49 · 341 阅读 · 0 评论 -
PHP + Redis 结合定时任务实现消息队列
1、创建入列脚本 rpush.php<?php$redis = new Redis(); $redis->connect('127.0.0.1',6379); $password = '****'; $redis->auth($password); $arr = array('h','e','l','l','o','w','o','r','l','d'); foreach($arr as $k=>$v){ $redis->rpush("myli原创 2020-10-12 19:29:57 · 633 阅读 · 0 评论 -
Linux 下定时任务执行 PHP 脚本并传递变量参数
xshell 远程连接上服务器之后,输入编辑命令 crontab -l 可查看 所有的定时任务列表[root@1dae434fd root]# crontab -l在编写定时任务之前我们要先熟悉计划任务的规则语法格式,以行为单位,一行为一个计划:分 时 日 月 周 需要执行的命令执行的命令建议写成绝对路径的格式!取值范围(常识): 分:0~59 时:0~23 日:1~31 月:1~12 周:0~7,0和7表示星期天四个符号:*:表示取值范围中的每一个数字原创 2020-10-12 17:50:31 · 901 阅读 · 0 评论 -
PHP fwtire 将数据批量写入并生成文件
PHP fwtire 将数据批量写入并生成文件利用 foreach 将有规律的链接写入本地文件<php? function writeFile($arr) { if (!is_array($arr) && !empty($arr)) { return '数组异常'; } $path = "C:/test.txt"; $file = fopen($path, 'w');原创 2020-08-20 17:36:53 · 471 阅读 · 0 评论 -
PHP 中 超全局变量 $_SERVER 详细介绍
PHP 中 超全局变量 $_SERVER 详细介绍$_SERVER[‘SERVER_ADDR’]//—— 当前运行脚本所在的服务器的 IP 地址。$_SERVER[‘SERVER_NAME’]//——当前运行脚本所在的服务器的主机名。如果脚本运行于虚拟主机中,该名称是由那个虚拟主机所设置的值决定。//Note: 在 Apache 2 里,必须设置 UseCanonicalName = On 和 ServerName。否则该值会由客户端提供,就有可能被伪造。 上下文有安全性要求的环境里,不应转载 2020-08-20 17:19:06 · 1486 阅读 · 0 评论 -
PHP 冒泡排序法对数组排序,从小到大以及从大到小
PHP 冒泡法对数组排序,从小到大以及从大到小冒泡法排序可简单的理解为,从数组的第一个值开始,循环的与后面的所有值进行对比,选出大(小)的那个,继续与后续的值对比,继续选出大(小)的值一直到两两比较完,并把它放到最后;接下来就是进入循环 ,第二个依次与后面数组值比较,知道字后一个比较完成,则排序完成,接下来是我写好的冒泡排序,代码如下:冒泡排序法(从小到大)<?php // 冒泡排序 从小到大 function arrSort($arr) { $len = co原创 2020-08-20 15:45:59 · 2947 阅读 · 1 评论