自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

艺术编程

分享编程知识,共同讨论技术

  • 博客(92)
  • 资源 (5)
  • 论坛 (1)
  • 收藏
  • 关注

原创 算法交换类排序之冒泡排序及优化详解(PHP代码实现)

冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。算法原理: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。

2020-07-23 19:06:18 1087 2

原创 算法插入排序之希尔入排序详解(python代码实现)

关于希尔排序的知识点讲解在我的博客算法分类中算法插入排序之折半插入排序详解(PHP代码实现)这里就不再重复讲解了,这里主要为python语言实现其算法。def shell(lis): n = len(lis) gap = int(n / 2) while gap > 0: for i in range(gap, n): temp = lis[i] j = i - gap while

2020-07-22 20:42:46 170 1

原创 算法插入排序之希尔入排序详解(Golang代码实现)

关于希尔排序的知识点讲解在我的博客算法分类中算法插入排序之折半插入排序详解(PHP代码实现)这里就不再重复讲解了,这里主要为go语言实现其算法。func ShellSort(nums []int) []int{ //外层步长控制 for step := len(nums) / 2; step > 0; step /= 2 { //开始插入排序 for i := step; i < len(nums); i+=step { .

2020-07-22 20:39:54 7243 2

原创 算法插入排序之希尔排序详解(PHP代码实现)

希尔排序(Shell's Sort)是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort),是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。希尔排序是基于插入排序的以下两点性质而提出改进方法的: 插入排序在对几乎已经排好序的数据操作时,效率高,即可以达到线性排序的效率...

2020-07-22 20:34:22 119 2

原创 HTTP状态码最全详解

HTTP状态码(英语:HTTP Status Code)是用以表示网页服务器超文本传输协议响应状态的3位数字代码。它由 RFC 2616 规范定义的,并得到 RFC 2518、RFC 2817、RFC 2295、RFC 2774 与 RFC 4918 等规范扩展。所有状态码的第一个数字代表了响应的五种状态之一。所示的消息短语是典型的,但是可以提供任何可读取的替代方案。 除非另有说明,状态码是HTTP / 1.1标准(RFC 7231)的一部分。HTTP状态码类别类别 描述 1xx:消.

2020-07-21 18:22:55 307 2

原创 PHP中 empty()、isset()、isnull()的区别

empty如果 变量 是非空或非零的值,则 empty() 返回 FALSE。换句话说,”"、0、”0″、NULL、FALSE、array()、var $var、未定义;以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。isset如果 变量 存在(非NULL)则返回 TRUE,否则返回 FALSE(包括未定义)。变量值设置为:null,返回也是false;unset一个变量后,变量被取消了。注意,isset对于NULL值变量,特殊处理。is_null检测传入值

2020-06-23 16:32:41 216 4

原创 MYSQL数据库设置登录权限的问题

Mysql默认关闭远程登录权限,如下操作允许用户在任意地点登录:1. 进入mysql,GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '' WITH GRANT OPTION;IDENTIFIED BY后跟的是密码,可设为空。2. FLUSH privileges; 更新Mysql为了安全性,在默认情况下用户只允许在本地登录,可是在有此情况下,还是需要使用用户进行远程连接,因此为了使其可以远程需要进行如下操作:一、允许roo

2020-05-23 15:16:27 2102 3

原创 PHP中array_merge()数组合并返回NULL的问题以及数组合并两种方法的区别

最近在将以前的代码重构,发现以前由于数据少来源多的问题都是分开弄得,现在整合的时候用到了array_merge()函数测试发现老是返回NULL经过断点发下了原因: $data = array_merge($data,$lrdata);//其中$data不为null,$lrdata为null;var_dump($data);exit;//打印为null按照上面的代码,输出结果为NULL,仔细分析后,发现是因为合并的数组中lrdata为NULL,结果,合并后的数组也变成NULL。查...

2020-05-22 19:30:04 790 2

原创 PHP取两数的商和余数

先看下PHP的算术运算符的讲解图:在PHP运算中,取两数的商(余数)很简单,使用模就可以得到了:<?php $x=5; $y=3; echo ($x % $y); // 输出2echo '<br>'; // 换行 ?>但是在除法运算中得到的数有时不是我们想要的数,例如<?php $x=10; $y=6;echo ($x / $y); // 输出1.6666666666667echo '<br>'; // 换行.

2020-05-22 16:13:23 611 2

原创 PHP中date()函数获取月份时带0与不带0的问题

最近在代码过程中使用date()获取月份时碰到带0与不带0的问题,以前解决过这样的问题,但是遗忘了,特写下来以便以后查看希望能帮助到有需要的朋友。一、字母为小写m时带0echo date('m')05二、字母为小写n时不带0echo date('n');5下面是一些date()函数中使用的一些参数详解:a - "am" 或是 "pm"A - "AM" 或是 "PM"d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31"D - 星期几,三个英文字母;

2020-05-15 17:10:28 633 3

原创 TP框架中跨控制器调用操作方法

最近在改一些老的项目,在优化代码中需要跨控制器调用一些方法,以前都是实例化类然后调用,现在才发现有更好的更简单的方法,因此记录下来。我要介绍的就是下面的A函数:Thinkphp中的A 函数(Thinkphp3.2.3版本)A函数是TP中实例化控制器的一个快捷函数,它的语法结构如下:A(‘模块/控制器’)//当控制器层名称不是 Controller 时须这样写A(‘模块/控制器’,‘控制器层名称’)如果要调用的控制器就在当前模块下,那么也可以按如下语法写:A(‘控制器’)//或者这样A(‘

2020-05-12 10:36:08 139 2

转载 CSDN 修改博客标题 - 告别自动生成的 id

很多人都困扰于 CSDN 自动生成的 id 太丑,或者 qq_xxxx 根本不是自己的 qq 号,在博客标题展示效果特别差,今天叫你一招告别自动生成的 idCSDN 修改博客标题 - 告别自动生成的 id先看一下原来的效果:1.点击右上角的【管理博客】2.左侧下面找到【设置】点击【博客设置】3.修改博客标题4.再来看一下效果原文链接:https://blog.csdn.net...

2020-01-16 17:33:52 28 2

原创 PHP获取13位时间戳

PHP通过time()获取的时间戳是10位的,想要获取13位的时间戳可以通过microtime()函数来实现,具体看一下代码: list($msec, $sec) = explode(' ', microtime()); $msectime = (float)sprintf('%.0f', (floatval($msec) + floatval($sec)) * 1000); return...

2020-01-09 14:58:15 492 3

原创 PHP 前端ajax中content-type为“application/json“的post过来的数据 $_POST接受不到的问题

ajax默认是以application/x-www-form-urlencoded方式提交。那么data就应该对应的是json对象。也就是常见的表单提交方式。在PHP中使用$_POST方式可以轻松获取。但如果将ajax的请求头强制指定为application/json,那么ajax发送的就必须是字符串。那么你的$_POST就接受不到了。必须使用$GLOBALS['HTTP_RAW_POST_DATA'](或者file_get_contents('php://input'))取出来,然后再json_dec

2020-11-19 10:28:31 12

原创 乐观锁与悲观锁

我们都知道锁的种类一般分为乐观锁和悲观锁两种,InnoDB 存储引擎中使用的就是悲观锁,而 按照锁的粒度划分,也可以分成行锁和表锁。 乐观锁是一种思想,它其实并不是一种真正的『锁』,它会先尝试对资源进行修改,在 写回时判断资源是否进行了改变,如果没有发生改变就会写回,否则就会进行重试,在 整个的执行过程中其实都没有对数据库进行加锁; 悲观锁就是一种真正的锁了,它会在获取资源前对资源进行加锁,确保同一时刻只有有 限的线程能够访问该资源,其他想要尝试...

2020-11-16 15:02:06 106

原创 include、require、include_once、require_once 的区别

include、require、include_once、require_once 的区别 了解下include、include_once、require和require_once这4个函数:include函数:会将指定的文件读入并且执行里面的程序; require函数:会将目标文件的内容读入,并且把自己本身代换成这些读入的内容; include_once 函数:在脚本执行期间包含并运行指定文件。此行为和 include 语句类似,唯一区别是如果该文件中已经被包含过,则不会再次包含。...

2020-11-16 14:54:44 5

原创 echo、print、print_r、var_dump 区别

echo 和 print 是语言结构、print_r 和 var_dump 是普通函数 echo:输出一个或多个字符串 print:输出字符串 print_r:打印关于变量的易于理解的信息 var_dump:打印关于变量的易于理解的信息(带类型)...

2020-11-16 14:47:30 13

原创 centos7源码安装php5.6

由于yum源安装php5.6后的php版本为5.6.40,然后remi员中mbstring扩展安装上不能使用提示版本问题,试了很多方法没解决于是源码安装,而且以前也一直没有源码装过所以也相当于学习一次。php的下载地址,大家需要安装哪个版本就去找对应版本下载http://php.net/downloads.php1: php编译安装,php的编译安装依赖的库比较多,编译安装会稍微难一点//安装epel EPEL的全称叫 Extra Packages for Enterpri..

2020-10-28 15:00:22 17

原创 -bash: /usr/bin/php: No such file or directory解决办法

今天测试机源码安装完php56,使用php -v时报错-bash: /usr/bin/php: No such file or directory原因:未找到可执行文件php解决办法:在/usr/bin/路径下 创建执行文件路径的硬链接//前面的地址是php安装地址 ln -s /usr/local/php/bin/php /usr/bin/php...

2020-10-28 11:45:36 31

原创 PHP Warning: Unknown: It is not safe to rely on the system‘s timezone settings. You are *required*

PHP Warning: Unknown: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, .

2020-10-27 17:10:18 13

原创 Error: php72w-common conflicts with php-common-5.4.16-45.el7.x86_64

yum 安装php的时候,用命令yum -y install php*遇到提示phpxx-common conflicts with php-common这个错误信息,这时候可以看到Error: phpxx-common conflicts with php-commonYou could try using --skip-broken to work around the problemYou could try running: package-cleanup --problemspac...

2020-10-27 10:01:49 21

原创 css实现文字超出隐藏并显示省略号

单行实现文本溢出显示省略号:span{ white-space: nowrap; /*超出的空白区域不换行*/ overflow: hidden; /*超出隐藏*/ text-overflow: ellipsis; /*文本超出显示省略号*/}双行实现文本溢出显示省略号:span{ display: -webkit-box; /*将对象转为弹性盒模型展示*/ -webkit-box-orient:

2020-10-26 15:03:48 40

原创 PHP实现单例模式

单例模式的定义:保证一个类只有一个实例,并提供一个访问它的全局访问点。PHP实现单例模式代码:class Singleton{ //创建静态私有的变量保存该类对象 static private $instance; //防止使用new直接创建对象 private function __construct(){} //防止使用clone克隆对象 private function __clone(){} static public fun

2020-10-24 18:48:42 4

原创 软件设计原则

一、开闭原则(Open Closed Principle,OCP):当应用的需求改变时,在不修改软件实体的源代码或者二进制代码的前提下,可以扩展模块的功能,使其满足新的需求。二、里氏替换原则(Liskov Substitution Principle LSP):子类可以扩展父类的功能,但不能改变父类原有的功能。也就是说:子类继承父类时,除添加新的方法完成新增功能外,尽量不要重写父类的方法。三、依赖倒置原则(Dependency Inverse Principle DIP):高层模块不应该依赖低层模块

2020-10-22 10:20:01 15 1

原创 PHP Warning: POST Content-Length of 9182683 bytes exceeds the limit of 8388608 bytes in Unknown on

今天在上传图片的时候出现一个问题,使用自己写的上传没有问题,但是使用kindeditor组件的时候发现上传错误,在上传代码打各种断点发现也没有报错,就是没有上传文件,查看php.ini中的上传限制也是没问题的因为自己写的能上传啊。很纠结最后通过error_log文件找到了错误PHP Warning: POST Content-Length of 9182683 bytes exceeds the limit of 8388608 bytes in Unknown on line 0。...

2020-09-24 18:57:08 7268 1

原创 vim中查找字符

vim有强大的字符串查找功能。我们通常在vim下要查找字符串的时候, 都是输入 / 或者 ? 加 需要查找的字符串来进行搜索,比如想搜索 super 这个单词, 可以输入 /super 或者 ?super, 两者的区别是前者是从上往下搜索,后者是从下往上搜索。那么如果我想搜索本行中某个单词,并且这个单词很长的时候, 手动输入该字符串是非常麻烦的, 当然可以使用模糊匹配(如* 或 ?)来做, 不过这样可能搜得到很多其他的,不完全匹配的字符串。可以使用如...

2020-09-24 18:52:14 16 1

原创 CentOS7 yum方式安装MySQL5.7

在CentOS中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB。1 下载并安装MySQL官方的Yum Repository[root@iZ2ze0yrfbj6dq2dk0eymxZ ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm 使用上面的命令就直接下载了安装用的Yum Reposi..

2020-09-23 10:14:06 7200 1

原创 PHPexcel报出错误‘break‘ not in the ‘loop‘ or ‘switch‘ context

今天本地改代码改完做测试发现现在的文件中打开是 “break' not in the 'loop' or 'switch' context“这样的;当时一脸懵逼,这是一个老项目最近也没动啊怎么回事,然后去线上测试是好的弄得我是没脾气,仔细排查发现是本地环境PHP版本升级的影响。这个项目是5.6的但是本地我切换的7忘了换回来了。 如果大家是7的版本直接删除PHPexcel的break就可以了。...

2020-09-22 17:53:45 73 1

原创 Leetcode删除排序数组中的重复项

给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。示例1:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。你不需要考虑数组中超出新长度后面的元素。示例2:给定 nums = [0,0,1,1,1,2,2,3,3,4],函数应该返回新的长度 5, ...

2020-09-21 18:46:11 3 1

原创 nginx 在浏览器中可以运行解析html文件,但打开php文件就提示File not found.错误

nginx 在浏览器中可以html文件,但打开php文件就提示File not found.错误,即使存在php文件。出现这个错误是nginx.conf配置文件配置的问题。在nginx.conf配置文件中fastcgi进程接收了错误路径SCRIPT_FILENAME /scripts,导致文件未找到。location~.php${roothtml;fastcgi_pass127.0.0.1:9000;...

2020-09-18 19:14:26 944 1

原创 Leetcode合并两个有序数组

题目:给你两个有序整数数组nums1 和 nums2,请你将 nums2 合并到nums1中,使 nums1 成为一个有序数组。说明:初始化nums1 和 nums2 的元素数量分别为m 和 n 。你可以假设nums1有足够的空间(空间大小大于或等于m + n)来保存 nums2 中的元素。示例:输入:nums1 = [1,2,3,0,0,0], m = 3nums2 = [2,5,6], n = 3输出:[1,2,2,3,5,6]解题思...

2020-09-17 17:10:28 2372 1

原创 LeetCode两数之和

题目:给定一个整数数组 nums和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]解题思路: 1.建立一个查找表; 2.使用循环计算每个数组中的值与目标值...

2020-09-15 09:46:57 7210 1

原创 LeetCode存在重复元素

题目:给定一个整数数组,判断是否存在重复元素。如果任意一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。示例 1:输入: [1,2,3,1]输出: true示例 2:输入: [1,2,3,4]输出: false示例3:输入: [1,1,1,3,3,4,3,2,4,2]输出: true解题思路: 1.一看到题目后首先想到的就是排序循环判断; 2.仔细一想又想到可以去重判断去重前后数...

2020-09-14 18:18:02 20 1

原创 LeetCode整数翻转

题目:给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为[−231,231− 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。解题思路:判断边界超出返回0,然后取数的绝对值,除以10,取余数和商(为整数),商再除以10,上一次余数...

2020-09-14 15:54:08 23 1

原创 LeetCode只出现一次的数字

给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例2:输入: [4,1,2,1,2]输出: 4解题思路: 由于题目要求不能使用额外空间我直接想到异或运算,异或运算的规则: 1. a ⊕ a = 0 2. a ⊕ 0 = a 3. a ⊕ b = b ⊕ a...

2020-09-14 11:20:54 23

原创 leetcode买卖股票的最佳时机

题目:给定一个数组,它的第i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。注意:你不能在买入股票前卖出股票。示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格;同时,你不能在买入前卖出股票。..

2020-09-14 10:25:18 36 1

原创 如何kill掉一个screen

1、使用screen名字,kill掉。 screen -S session_name -X quit2、激活screen: screen -rsession_name 并利用exit退出并kiil掉session。

2020-09-14 09:46:21 564 1

原创 Cookie、session和localStorage、以及sessionStorage之间的区别

一. cookie cookie的内容主要包括:名字、值、过期时间、路径和域。路径与域一起构成cookie的作用范围。若不设置时间,则表示这个cookie的生命期为浏览器会话期间,关闭浏览器窗口,cookie就会消失。这种生命期为浏览器会话期的cookie被称为会话cookie。会话cookie一般不存储在硬盘而是保存在内存里,当然这个行为并不是规范规定的。若设置了过期时间,浏览器就会把cookie保存到硬盘上,关闭后再打开浏览器这些cookie仍然有效直到超过设定的过期时间。对于保...

2020-09-04 11:47:50 1384 2

原创 JS 详解 Cookie、 LocalStorage 与 SessionStorage

基本概念CookieCookie 非常小,它的大小限制为4KB左右。它的主要用途有保存登录信息,比如你登录某个网站市场可以看到“记住密码”,这通常就是通过在 Cookie 中存入一段辨别用户身份的数据来实现的。localStoragelocalStorage 是 HTML5 标准中新加入的技术,它并不是什么划时代的新东西。早在 IE 6 时代,就有一个叫 userData 的东西用于本地存储,而当时考虑到浏览器兼容性,更通用的方案是使用 Flash。而如今,localStorage 被大多数

2020-09-04 11:33:29 1398 2

原创 JS中var、let、const区别

在javascript中有三种声明变量的方式:var let const。letvarconst的区别? var let const 变量 提升 没有提升 没有提升 作用域 只要不是在function里就是全局变量 配合{}可以形成块级作用域 也会形成块级作用域 是否挂在到GO上 是 否 否 是否能重复声明 能 否 否 赋值 可以不赋值 可以不赋值 必须...

2020-09-02 18:10:54 2175 1

算法+数据结构基础.docx|1.docx

数结构与算法基础知识word文档,提供给需要学习的人,里面详细讲解了各种数据结构以及一些简单的算法知识非常适合初学者,便于大家学习

2020-07-07

BAT大厂PHP高级面试题|BAT大厂PHP高级面试题系列.pdf

大厂PH[高级面试题,里面有很多有用的知识点,PHPer如果想要跳槽或者学习瓶颈可以根据文档中的知识点进行深度学习,里面的问题的答案可能有些不全大家学习的时候可以再网上对问题进行深度的解答,对问题进行深度的理解。

2020-11-17

VUE面试题汇总最新版|前端面试题.docx

网上汇集的一些vue的面试题大多数都是基础题,前端找工作的同学可以下载看一看临时磨磨枪比较有用哦网上汇集的一些vue的面试题大多数都是基础题,前端找工作的同学可以下载看一看临时磨磨枪比较有用哦

2020-10-20

php微信接口开发实战项目 聊天机器人+微信支付源码.zip

PHP微信开发 机器人聊天+微信支付需要的朋友可以下载看看源码相信会对你有所启发当然也可以修改直接使用

2020-05-23

University-Students-Forum-master.zip

整套商城源码,包含前后台,基于PHP的TP3.2.3开发,简答实用

2019-08-26

php的woekman框架怎样自学

发表于 2020-05-27 最后回复 2020-06-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除