自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 shell script快速入门

shell script简单入门

2022-10-25 22:48:41 1068

原创 php使用curl

function http_curl($url, $type = 'get', $params = '', $header = []){ $ch = curl_init(); // 设置curl的参数 curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);...

2019-12-30 10:02:14 136

原创 php生成excel文件

<?php function createExcel($list, $indexKey, $filename = "", $startRow = 1, $excel2007 = false){ require_once APPLICATION_PATH . '/PHPExcel/PHPExcel.php'; require_once APPLICATION_PATH . ...

2019-12-30 09:31:37 241

原创 php、python过滤不可见字符

php代码<?php/** * @param $str * @return string * 过滤不可见字符,支持中文过滤 * 0至31和127这33个编码是不可见的特殊字符(控制符) */function filterNonPrintableChar($str){ $i = 0; $newStr = ''; while (isset($str[$i...

2019-12-05 19:08:46 1369

原创 php生成csv文件

封装函数function makeCsv($data, $head = [], $path_file = ''){ // 文件名 if (empty($path_file)) { $path_file = "./" . time() . ".csv"; } $handle = fopen($path_file, 'wb'); //第一行...

2019-11-25 10:05:17 313 1

原创 算法基础-快速排序-PHP实现

算法原理通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。PHP实现快速排序&lt;?phpfunction quickSort($arr){ if(count($arr)&gt;1){ $k=$arr[...

2018-03-20 22:26:38 163

原创 算法基础-插入排序-PHP实现

算法原理把待排序的记录按其键值的大小逐个插入到一个已经排好序的有序序列中,直到所有的记录插入完为止,得到一个新的有序序列。PHP实现插入排序&lt;?phpfunction insertion_sort ($arr) { for($i=1; $i&lt;count($arr); $i++){ $tmp=$arr[$i]; ...

2018-03-20 21:54:54 194

原创 算法基础-冒泡排序-PHP实现

算法原理冒泡排序算法的运作如下:(从后往前) 1. 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 2. 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。所以第一次两两比较完,会有一个最大数放在最后。第二次两两比较完,第二大的数会被放在倒数第二。 3. 重复以上的步骤,已经放好的数字不用再比较。 4. 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对...

2018-03-20 19:28:26 149

原创 算法基础-选择排序-PHP实现

算法原理工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法(比如序列[5, 5, 3]第一次就将第一个[5]与[3]交换,导致第一个5挪动到第二个5后面)PHP实现选择排序&lt;?phpfunction selectionSort ($arr) { $count ...

2018-03-20 18:32:24 218

原创 算法基础-二分查找-PHP实现

用PHP语言实现二分查找递归&lt;?php/** * $arr:需要查找的数组 * $min:数组最小下标 * $max:数组最大下标 * $target:要查找的数字 **/function binarySearch ($arr, $min, $max, $target) { if ($min &lt;= $max) { $mid =...

2018-03-19 17:39:14 189

原创 mysql主从配置

环境:CentOS7系统,MySQL5.7版本 master ip:192.168.6.112,主服务器已安装discuz,数据库名为discuz slave ip:192.168.6.113,把主服务器的discuz数据库导入到这台服务器主数据库配置vim /etc/my.cnflog-bin = mysql-bin-master #启用二进制日志server-id = 1 ...

2018-03-18 00:18:11 227

原创 nginx负载均衡配置

环境:三台用VMware虚拟机软件最小安装的CentOS7 先安装好nginx,教程:http://blog.csdn.net/qq_21707807/article/details/79180681 三台机器IP: 192.168.6.111 负载均衡服务器 192.168.6.112 上游服务器 192.168.6.113 上游服务器负载均衡...

2018-03-16 17:05:06 343

原创 Linux基础-与internet时间同步

很多时候我们的linux时间与Internet时间并不一样,所以需要同步对准时间。yum -y install ntpdate #安装时间同步服务软件ntpdate ntp1.aliyun.com #同步阿里云的ntp服务器时间这是阿里云的ntp服务器列表:https://help.aliyun.com/knowledge_detail/40583.html?spm=5176.11...

2018-03-11 13:34:47 910

原创 Linux基础-安装Redis、MongoDB及PHP扩展

安装redisyum -y install epel-release #安装epel仓库,里面包含redis的yum仓库yum -y install redis #安装redisservice redis start #启动redis服务systemctl enable redis #开机自启redisredis-cli #使用redis命令行工具安装php...

2018-02-26 21:52:39 665

原创 shell script - 分析nginx的启动脚本

分析注释nginx的启动脚本

2018-02-23 23:05:41 253

原创 Linux基础-安装Samba

安装sambayum -y install samba samba-client配置sambasmbpasswd -a root  #将系统用户root加入到Samba用户数据库,会提示设置密码#第一次设置密码只支持复杂密码,后续设置密码可以设置空密码service smb start #启动samba服务chkconfig smb on #开机自启修改...

2018-02-02 22:10:21 213

原创 Linux基础-CentOS7安装nginx、PHP7、MySQL

安装nginx使用yum安装nginx 根据官方文档:http://nginx.org/en/linux_packages.html#stable 先添加nginx的yum容器,创建文件vi /etc/yum.repos.d/nginx.repo,将下面的内容复制进去:[nginx]name=nginx repobaseurl=http://nginx.org/packages...

2018-01-31 22:57:30 872

原创 Linux基础-软件安装:RPM与YUM

什么是 RPM RPM 全名是‘ RedHat Package Manager ’简称则为 RPM。顾名思义,当初这个软件管理的机制是由 Red Hat 这家公司发展出来的。 RPM 是以一种数据库记录的方式来将你所需要的软件安装到你的 Linux 系统的一套管理机制。RPM最大的特点就是将你要安装的软件先编译过, 并且打包成为 RPM 机制的安装包,通过包装好的软件里头默认的数据库记录,...

2018-01-22 22:01:28 251

原创 Linux基础-进程管理

什么是进程?一个程序被加载到内存中运行,那么在内存内的那个数据就被称为进程(process)。进程就是一个正在运行中的程序。进程的查看利用静态的ps或动态的top命令ps aux #使用BSD语法(没有破折号)查看系统上的所有进程ps -ef #使用标准语法(有破折号)来查看系统上的所有进程ps axjf #打印进程树ps -l #查看当前用户bash进程...

2018-01-17 23:10:24 214

原创 Linux基础-CentOS7连网设置

虚拟机软件:VMware配置虚拟机右键虚拟机-》设置-》桥接模式、复制物理网络连接状态。 连网vi /etc/sysconfig/network-scripts/ifcfg-eno16777736 #网卡名后面的数字可能不一样 把ONBOOT=no改成ONBOOT=yesservice network restart #重启网络服务ping www.bai...

2018-01-11 13:23:13 1014

原创 Linux基础-Vim常用命令

移动光标的方法 命令 效果 h 或 向左箭头键(←) 光标向左移动一个字符 j 或 向下箭头键(↓) 光标向下移动一个字符 k 或 向上箭头键(↑) 光标向上移动一个字符 l 或 向右箭头键(→) 光标向右移动一个字符 Page Down 或 Ctrl + f 屏幕‘向下’移动一页 Page Up 或 Ctrl ...

2017-11-13 08:37:07 231

原创 Linux基础-常用命令详解

文件属性与权限chgrp :改变文件所属群组chgrp [-R] dirname/filename ...选项与参数:-R : 进行递归(recursive)的持续变更,即连同次目录下的所有文件、目录都更新成为这个群组。chown :改变文件拥有者chown [-R] 账号名称 文件或目录chown [-R] 账号名称:组名 文件或目录选项与参数:-R : 进行递...

2017-11-05 19:17:59 267

原创 Linux基础-实体链接与符号链接

Hard Link (实体链接, 硬连接)hard link 只是在某个目录下新增一个文件名链接到某 inode 号码的关连记录而已。即在要建立hard link的目标文件夹的block数据块中增加一条inode号码与文件名的记录,而这个inode号码就是源文件的inode号码。 hard link 是有限制的: - 不能跨 Filesystem; - 不能 link 目录。...

2017-11-05 16:07:52 962

原创 Linux基础-EXT2文件系统

什么是文件系统?文件系统是操作系统在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。文件系统特性: 索引式文件系统操作系统的文件数据除了文件实际内容外, 通常含有非常多的属性,例如 Linux 操作系统的文件权限(rwx)与文件属性(拥有者、群组、时间参数等)。 文件系统通常会将这两部份的数据分别存放在不同的区块,权限与属性放置到...

2017-11-05 11:42:59 234

原创 我对面向对象的理解

面向对象是一种编程思想,通过封装、继承、多态使程序利于维护、扩展、重用。 PHP同一个类的实例对象只是类属性值不同,类方法是共用的。也可以这么理解,行为一样,具体属性值不一样。封装:明确标识出允许外部可访问的属性和方法,或者叫接口。目标是使系统中的每一部分都尽可能独立,外部不需要关心每个部分的内部实现细节。 继承:其一,使子类完全继承父类的属性和方法,并根据自身需要修改和扩展,增加了代码的

2017-05-07 21:31:16 244

原创 redis基础学习总结

什么是RedisRedis是Remote Dictionary Server(远程数据服务)的缩写,是一款:内存高速缓存数据库该软件使用C语言编写,它的数据模型为 key-value。它支持丰富的数据结构,比如 string, list, set, sorted set, hash 。可持久化,保证了数据安全。什么场合适合使用RedisString——相当于加上持久化特性的mem

2016-11-22 00:33:56 236

原创 MySQL常规优化

建表优化1. 建索引 所有查询量大的字段都建索引2. 字段最小 所有的字段选择最小的数据类型,如id可以使用mediumint,比int节省25%的空间3. 字段定长 字符串长度固定则使用char类型,如密码字段MD5加密则使用char(32)4. 使用 ENUM 而不是 VARCHAR 在MySQL内部ENUM 保存的是 TINYINT, 外表显示为字符串。某些字段的

2016-11-15 16:05:49 345

原创 mysql编程-触发器

什么是触发器?触发器就是在某个表上预先设定好发生某个事件(增/删/改)的时候来完成某些任务的一种代码机制。简单的来说就是自定义事件创建触发器:create trigger 触发器名 触发时机 触发事件 on 表名 for each row 要执行的代码;触发器名:一个名字,在一个数据库中唯一。触发时机:事件之前触发还是之后,只有两个可用值:before,after。触发事件:表示一个表上什么事

2016-11-04 07:51:46 337

原创 PHPStorm安装主题插件

因为phpstorm默认的主题实在是不能忍,又非常喜欢类似与sublime类型的主题,于是找到了国外的phpstorm主题站,http://www.phpstorm-themes.com/我下载的是GeekNight_0.icls,就是第一个,看着很舒服。也可以在搜索框搜索主题。 安装方法从网站首页进入帮助页面 拉到下面找到window的描述 目前我装的是phpstorm2016,之前装了ph

2016-11-02 16:58:27 9585

原创 MySQL编程-内置函数

说明:x代表一个数字;str表示一个字符串; t, t1, t2均表示一个时间/日期数据;col表示一列,通常就是字段名数值函数abs(x)——返回x的绝对值ceiling(x)——向上取整floor(x)——向下取整pi()——返回圆周率pow(x,y)——返回x的y次方rand()——返回0~1的随机数round(x,y)——返回参数x的四舍五入的有y位小数的值sqrt(x)——

2016-11-02 15:46:18 466

转载 一个漂亮的输出MySql数据库表结构的PHP页面

经常为了方便和直观,我们会首先直接在数据库中设计出表,但是接下来又要将表的结构和设计编写在设计文档中,以便编码的时候可以直观的查询,一旦数据库表非常多,字段非常多的时候,这无疑是件非常郁闷的工作。这是一个漂亮的PHP页面,可以自动输出MySql数据库所有表结构,大大方便了文档的编写工作,也同时非常方便编码的时候进行查询。当然在设计MySql数据库表和字段的时候详细填写表和字段的备注,这是非常好的习...

2016-09-02 14:03:24 992

空空如也

空空如也

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

TA关注的人

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