韩淼燃
最近在更新运维专栏。欢迎大家来点赞,关注。
展开
-
php语法问题empty($id) && $this->error(‘参数不能为空!‘);
empty($id) && $this->error('参数不能为空!');请问这句话怎么解释!多谢了!a && b与逻辑运bai算符,当a、b都为dutrue时才为true,因zhi此,当a为False时,b则不执行,直接跳过。如dao果empty($id)为空返回true时,才zhuan会执shu行$this->error('参数不能为空!')。否则直接跳过...原创 2020-12-07 10:38:33 · 882 阅读 · 0 评论 -
php二维数组中插入一个元素
$arr['uid'] = $uid; array_walk($address, function (&$value, $key, $arr) { $value = array_merge($value, $arr); }, $arr);原创 2020-11-23 14:06:23 · 2511 阅读 · 0 评论 -
php数组函数array_column用法
一般array_column是获取二维数组的制定列,组成新的数组输出。今天看到有可以制定第三个参数,制定输出数组的key。<?php$arr = [ [ 'id' => 1, 'name' => 'a' ],[ 'id' => 2, 'name' => 'b', ], [ 'id' => 4, 'name' => 'c' ], [原创 2020-10-13 20:31:37 · 747 阅读 · 0 评论 -
php开发项目运行报错division by zero或者Warning: Division by zero
Division by zero 在百度翻译中是除以0,实际情况是在代码运行中,有运算,但是除数为0,我们知道,除数是不能为0得,所以这个地方得做判断。看代码:处理错误得方式有2中,上图代码是处理问题得一种,第二种是直接用@屏蔽掉错误,不建议这样处理。...原创 2020-08-06 10:05:43 · 4806 阅读 · 0 评论 -
使用composer自动加载类文件
新建一个项目test在项目目录执行composer init根据提示执行填写想要的东西执行composer install会在项目目录生成一个vendor目录打开composer.json文件,加入如下代码:"autoload": { "psr-4": { "Test\\": "src" } }其中Test是命名空间,src为源文件目录做完上面步骤后在项目根目录建一个src目录 ,再创建一个IndexControl.原创 2020-05-27 16:50:28 · 979 阅读 · 0 评论 -
php问题……PHP设计中MVVM模式的实例解析
WPF的数据绑定与Presentation Model相结合是非常好的做法,使得开发人员可以将View和逻辑分离出来,但这种数据绑定技术非常简单实用,也是WPF所特有的,所以我们又称之为Model-View-ViewModel(MVVM)。这种模式跟经典的MVP(Model-View-Presenter)模式很相似,除了你需要一个为View量身定制的model,这个model就是ViewModel。ViewModel包含所有由UI特定的接口和属性,并由一个 ViewModel 的视图的绑定属性,并可获得二者原创 2020-05-13 11:38:05 · 383 阅读 · 0 评论 -
php问题……神操作之实现PHP跳转
PHP中实现页面跳转有以下几种方式在PHP脚本代码中实现<?php header("location:url地址") ?>例如 <?php header("location:helloworld.php")?> 页面会立即跳转,因为header执行了location重定向延迟跳转(比如登陆成功后会有几秒钟等待时间,然后跳转到了其他页面)<?php header("Refresh:秒数;url=地址") ?>例如 <?php header("R原创 2020-05-11 17:40:40 · 280 阅读 · 0 评论 -
php问题……PHP如何计算两个时间段交集的天数?
/** * 计算两个时间段之间交集的天数 * @param $startDate1 开始日期1 * @param $endDate1 结束日期1 * @param $startDate2 开始日期2 * @param $endDate2 结束日期2 */public function share_date_days($startDate1, $endDate1, $startDate2, $endDate2){ $days = 0; $startDate1 = .原创 2020-05-11 17:31:27 · 290 阅读 · 0 评论 -
php问题……PHP中100个最常用的函数
排行 函数 频率 平均值 1 count 81.41 % 147.67 2 is_array 77.32 % 117.86 3 substr 74.62 % 142.92 4 in_array 74.16 % 79.55 5 explode 73.19 % 71.51 6 str_replace 72.32 % 101.05 7 implode原创 2020-05-11 17:28:07 · 240 阅读 · 0 评论 -
php问题……PHP中的生成器(Generator)详解
PHP 生成器是什么?生成器是在 PHP 5.5 版本中添加的,它提供了一种简单的方法来遍历数据,而不需要在内存中构建数组。是不是有点疑惑?那举一个例子,展示使用生成器是一个好方式。首先,创建一个 generator.php 文件,它将贯穿我们整个例子。创建文件之后,我们添加一段代码。<?phpfunction getRange ($max = 10) { $array = []; for ($i = 1; $i < $max; $i++) {原创 2020-05-11 16:57:05 · 469 阅读 · 1 评论 -
php问题……php如何去除空数组
在php中可以通过使用“array_filter()”将空数组去除,该函数的作用是用回调函数过滤数组中的单元,其函数语法为“array_filter($array,$callback,$flag)”,使用时只需将数组传入第一个参数即可。示例代码:<?php$entry = array( 0 => 'foo', 1 => false, 2 => -1, 3 =&g原创 2020-05-11 16:38:01 · 167 阅读 · 0 评论 -
php问题……php实现word文档在线浏览功能
第一种就是比较传统的,但很多前辈都说兼容性是最好的,那就是基于flash的预览方案,具体方式就是把word转成swf,并借助于flexPaper在网页上实现预览。我并不是很喜欢这种,原因是这种方式无法让用户对显示出来的内容进行操作,比如复制!采用这种方案的系统目前是豆丁。第二种我比较中意,那就是把word转成html,这样就可以告别flash了!目前百度文库的做法就是这种~不仅支持用户直接复制内容,而且感觉自由度更大,不过需要自己开发实现的东西也更多!安装openoffice第一步:下载 Apac原创 2020-05-11 16:32:53 · 596 阅读 · 0 评论 -
PHP计算两个经纬度地点之间的距离
/** * 求两个已知经纬度之间的距离,单位为米 * * @param lng1 $ ,lng2 经度 * @param lat1 $ ,lat2 纬度 * @return float 距离,单位米 * @author www.Alixixi.com */function getdistance($lng1, $lat1, $lng2, $lat2) { // 将角度...原创 2020-03-18 09:56:47 · 514 阅读 · 0 评论 -
php中array_flip数组翻转
array_flip() 函数返回一个反转后的数组,如果同一值出现了多次,则最后一个键名将作为它的值,所有其他的键名都将丢失。如果原数组中的值的数据类型不是字符串或整数,函数将报错。<?php$trans=array_flip($trans);$original=strtr($str,$trans);?><?php$trans=array("...原创 2020-03-17 10:41:37 · 294 阅读 · 0 评论 -
docker命令
docker search nginxdocker pull 镜像名 下载docker images 查看镜像docker run -dit 镜像名 /bin/bash镜像运行就是容器。docker ps 查看正在运行的镜像docker exec -it 容器的id /bin/bash 进入容器docker stop 容器id 停止dockerdocker run ...原创 2019-07-09 08:54:43 · 264 阅读 · 0 评论 -
快速删除docker中的容器
有时候做练习的时候会生成大量的容器,一个一个停用然后删除实在太没有效率了。1、停用全部运行中的容器:docker stop$(docker ps -q2、删除全部容器:docker rm$(docker ps -aq3、一条命令实现停用并删除容器:docker stop$(docker ps -q) & docker rm$(docker ps -aq)...原创 2019-03-26 11:23:41 · 414 阅读 · 0 评论 -
docker常用命令
1. 查看docker信息(version、info)查看docker版本 docker version 显示docker系统的信息 docker info 2. 对image的操作(search、pull、images、rmi、history)检索image docker search image_name 下载ima...原创 2019-03-25 08:52:57 · 256 阅读 · 0 评论 -
Docker 删除镜像
本以为删除镜像会很简单,但是删除过程中并不是那么顺利。1. 查询镜像现在想删除第一个,ID为99f85991949f 的镜像。从上面看出,需要先停到ID为 67*** 的容器。2. 查询容器3. 先删除容器上面可以看出,容器已经删除。4. 删除镜像注意点:1. 删除前需要保证容器是停止的 ...原创 2019-03-24 21:30:12 · 175 阅读 · 0 评论 -
链接
.htaccess 重定向http://www.lvjiyong.com/i468.htmlbugfree 的安装与运用 http://wenku.baidu.com/link?url=fqiNUQBY2HWNjMDFyd4IPigCaWYKkRnjJLPVxQJWngGcwPlLFPfE3e61fTcJFZWBd5sX_ksFSmANfuryJYD5LO2q6yUc0Ejkz5jD_JJ...原创 2019-07-11 09:45:17 · 370 阅读 · 0 评论 -
http常用状态码
200 OK 301 Moved Permanently 302 Found 304 Not Modified 307 Temporary Redirect 400 Bad Request 401 Unauthorized 403 Forbidden 404 Not Found 410 Gone 500 Internal Server Error 501 Not Imp...原创 2019-07-11 09:40:37 · 286 阅读 · 0 评论 -
HTTP协议
http超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。1960年美国人Ted Nelson构思了一种通过计算机处理文本信息的方法,并称之为超文本(hypertext),这成为了HTTP超文本传输协议标准架构的发展根基。T...原创 2019-07-11 09:35:16 · 251 阅读 · 0 评论 -
git Please move or remove them before you can merge
在使用git pull时,经常会遇到报错:Please move or remove them before you can merge这是因为本地有修改,与云端别人提交的修改冲突,又没有merge.如果确定使用云端的代码,最方便的解决方法是删除本地修改,可以使用以下命令:git clean -d -fx ""d -----删除未被添加到git的路径中的文件f -----...原创 2019-11-18 16:01:59 · 4233 阅读 · 0 评论 -
git报错:Pull is not possible because you have unmerged files解决方法
在gitpull的过程中,如果有冲突,那么除了冲突的文件之外,其它的文件都会做为staged区的文件保存起来。重现:$gitpullAApplications/Commerce/BookingAnalysis.javaAApplications/Commerce/ClickSummaryFormatter.javaMApplications/Comme...原创 2019-07-08 16:18:05 · 761 阅读 · 0 评论 -
Git出现冲突error: Your local changes to the following files would be overwritten by merge: xxx/...
由于公司目前实行开发模块化,所以原来用的SVN代码管理器全部迁移到Git上去了,原来用过git现在已经忘的差不多了,目前暂时用的是SourceTree来管理代码的类似与SVN的Cornerstone的,今天在拉取服务器的代码的出现了冲突,记录下以供后续参考:1.用git pull来更新代码的时候,遇到了下面的问题:error: Your local changes to the followin...原创 2019-07-08 11:39:55 · 2111 阅读 · 0 评论 -
git pull 错误:The following untracked working tree files would be overwritten by merge
$ git pull origin alphaFrom https://github.com/shirley-wu/HeartTrace* branch alpha -> FETCH_HEADerror: The following untracked working tree files would be overwritten by merge:...原创 2019-07-08 11:39:10 · 4448 阅读 · 0 评论 -
git错误--error: Merging is not possible because you have unmerged files. hint: Fix them up in the work
这样的错误是本地的文件和未提交(commit)的文件有差异。所以,在这里先使用git status然后 git add 差异文件。然后在git commit。但是,这里又会出现一个问题。这个时候使用git push -f origin master然后切换分支到master。建议在分支开发。...原创 2019-04-19 11:42:31 · 13369 阅读 · 0 评论 -
更新被拒绝,因为您当前分支的最新提交落后于其对应的远程分支
提示:更新被拒绝,因为您当前分支的最新提交落后于其对应的远程分支。提示:再次推送前,先与远程变更合并(如 'git pull ...')。详见提示:'git push --help' 中的 'Note about fast-forwards' 小节。引起这个问题是远程仓库和本地不同步引起的解决方案:需要先获取远端更新并与本地合并,再git push具体操作如下:git remo...原创 2019-04-09 15:25:43 · 4769 阅读 · 0 评论 -
在CentOS上搭建git服务器
本篇为大家讲解如何在CentOS上搭建git服务器第一步:安装git输入以下命令yuminstall-y git输入查看刚才安装的版本git--versionOK!安装完成第二步:建立仓库我们以根目录下创建git文件夹为仓库输入:mkdir testsudo git init --bare test指定它为仓库并初始化输入:...原创 2019-04-03 09:06:31 · 321 阅读 · 0 评论 -
centos7安装php7.3的redis扩展(不是redis服务!)
PHP其他扩展加装扩展也是一样的步骤~PHP官网下载redis扩展:http://pecl.php.net/package/redis稳定版吧:[root@wf ~]# wget http://pecl.php.net/get/redis-4.2.0.tgz [root@wf ~]# tar -zxvf redis-4.2.0.tgz //到源码目录 [r...原创 2020-03-05 18:05:38 · 1124 阅读 · 0 评论 -
Redis密码设置、访问权限控制等安全设置
Redis作为一个高速数据库,在互联网上,必须有对应的安全机制来进行保护,方法有2,如下。1.比较安全的办法是采用绑定IP的方式来进行控制。请在redis.conf文件找到如下配置# If you want you can bind a single interface, if the bind option is not# specified all the interfaces...原创 2019-07-09 17:11:24 · 1063 阅读 · 0 评论 -
Redis 密码设置和查看密码
redis没有实现访问控制这个功能,但是它提供了一个轻量级的认证方式,可以编辑redis.conf配置来启用认证。 1、初始化Redis密码: 在配置文件中有个参数: requirepass 这个就是配置redis访问密码的参数; 比如 requirepass test123; (Ps:需重启Redis才能生效) redis的查询速度是非常快的,外部用户一...原创 2019-07-09 17:10:13 · 10055 阅读 · 1 评论 -
linux安装redis 完整步骤
安装:1.获取redis资源 wget http://download.redis.io/releases/redis-4.0.8.tar.gz2.解压 tar xzvf redis-4.0.8.tar.gz3.安装 cd redis-4.0.8 make cd src make install PREFIX=/usr/local/redis4....原创 2019-07-09 16:38:06 · 125 阅读 · 0 评论 -
redis原理
Redis存储机制分成两种Snapshot 和 AOF。无论是那种机制,Redis都是将数据存储在内存中。 Snapshot工作原理: 是将数据先存储在内存,然后当数据累计达到某些设定的伐值的时候,就会触发一次DUMP操作,将变化的数据一次性写入数据文件(RDB文件)。 AOF 工作原理: 是将数据也是先存在内存,但是在存储的时候会使用调...原创 2019-07-09 09:00:42 · 313 阅读 · 0 评论 -
linux 下 创建多个redis实例,并且配置主从复制
一、配置多个redis1、一个redis对应一个节点,一个节点一个端口号,每个节点对应一个redis.conf文件,找到自己redis.conf文件位置进行复制操作:cp /etc/redis.conf /ect/redis6380.conf2、进入新的redis.conf文件,进行修改配置:vi /etc/redis6380.conf修改为配置:port 6380bin...原创 2019-03-22 11:35:07 · 653 阅读 · 0 评论 -
redis 事务
redis对事务的支持目前还比较简单。redis只能保证一个client发起的事务中的命令可以连续的执行,而中间不会插入其他client的命令。 由于redis是单线程来处理所有client的请求的所以做到这点是很容易的。一般情况下redis在接受到一个client发来的命令后会立即处理并 返回处理结果,但是当一个client在一个连接中发出multi命令有,这个连接会进入一个事务上下文,该连接后...原创 2019-03-22 11:34:21 · 175 阅读 · 0 评论 -
Redis数据备份与恢复
持久化1.RDB方式(默认)RDB方式的持久化是通过快照(snapshotting)完成的,当符合一定条件时Redis会自动将内存中的所有数据进行快照并存储在硬盘上。进行快照的条件可以由用户在配置文件中自定义,由两个参数构成:时间和改动的键的个数。当在指定的时间内被更改的键的个数大于指定的数值时就会进行快照。RDB是Redis默认采用的持久化方式,在配置文件中已经预置了3个条件:...原创 2019-03-22 11:32:09 · 1204 阅读 · 0 评论 -
Redis集群搭建与简单使用
介绍安装环境与版本用两台虚拟机模拟6个节点,一台机器3个节点,创建出3 master、3 salve 环境。redis 采用 redis-3.2.4 版本。两台虚拟机都是 CentOS ,一台 CentOS6.5 (IP:192.168.31.245),一台 CentOS7(IP:192.168.31.210) 。安装过程1. 下载并解压cd/root/software...原创 2019-03-22 11:26:22 · 174 阅读 · 0 评论 -
Linux配置Nginx,MySql,php-fpm开机启动的方法
一. Nginx 开机启动1、在/etc/init.d/目录下创建脚本vim /etc/init.d/nginx2、编写脚本内容 (将以下复制进去相应改动安装路径) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17...原创 2020-01-08 17:24:54 · 253 阅读 · 0 评论 -
不同连接终端通过密钥方式登录 Linux
近期碰到需要使用密钥登录的情况,不同的连接终端的情况不太一样,所以对此总结一番一、 密钥对生成注意:本地主机和目的主机需 ping 通1)确认服务器是否安装有 ssh 以及openssh服务端[zyy@kube-master ~]$ rpm -qa |grep opensshopenssh-6.6.1p1-25.el7_2.x86_64openssh-clients-6....原创 2020-01-08 15:58:04 · 231 阅读 · 0 评论 -
FTP搭建和问题解决
1.安装FTPyum -y install vsftpd2.新建用户,并指定主目录useradd -d /home/test -m test (增加用户test,并制定test用户的主目录为/home/test)3.设置新用户密码passwd test (为test设置密码)4.更改用户相应的权限设置usermod -s /sbin/nologin ...原创 2019-06-26 16:09:45 · 361 阅读 · 0 评论