- 博客(58)
- 资源 (1)
- 收藏
- 关注
转载 php 中文转拼音(包括部分生僻字)
处理类:namespace pinyin;/** * 基于PHP语言的汉语转拼音的类 * 兼容 UTF8、GBK、GB2312 编码,无须特殊处理 * 对中文默认返回拼音首字母缩写,其它字符不作处理直接返回。 * */class WordPing{ /** 汉字拼音对照数组 * @var array */ var $pinyin = a...
2019-07-11 14:59:03
4729
1
原创 php 数组排序
1.一维数组排序以下圈起来的方法,则为一维数组排序2.二维数组:利用内置方法(array_multisort)/** * 二维数组排序 * @param array $array 二维数组 * @param string $sort_key 需要排序的字段键名 * @param int $sort_order 排序方式(SORT_ASC:升序、SORT_DESC:降...
2019-07-09 16:30:37
260
原创 基于tp5的接口框架搭建
需求描述:搭建一个可继承、可拓展的基类控制,包括:接口加密验算、身份校验、参数校验、请求来源校验、重写错误处理机制等功能描述:1.api接口类继承基类,相关校验处理机制,由基类完成2.自定义错误处理机制,包括:程序异常、自定义异常、错误日志收集基类(Base)namespace app\common\controller;use think\Controller;...
2019-06-27 18:20:09
1106
原创 redis有序集合实现实时排名
需求:如何快速简单的进行论坛文章浏览次数排名,减少对数据库、后端程序的请求处理等。。。解决方案:采用redis中的有序集合,针对实时排名的功能1.根据帖子id,作为value,用zadd(新增)或者zincrby更新(添加)2.移除指定元素,用zrem3.用zrevrange(从大到小)或者zrange(从小到大),获取排序后的数据4.排序后的数据作为查询条件,进行mysql数据查询...
2019-05-24 20:16:28
1478
转载 html5 浏览器消息通知(Notification)
设置允许浏览器通知(仅支持https):代码如下:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>tip</title> <script type="text/javascript" sr...
2019-04-09 17:41:56
8136
原创 php 图片压缩
namespace images;class File{ /** * desription 压缩图片 * @param sting $imgsrc 图片路径 * @param string $imgdst 压缩后保存路径 */ public static function image_png_size_add($imgsrc,$imgds...
2018-10-10 15:00:49
556
原创 php使用xunsearch分词搜索
composer下载扩展文件:composer require --prefer-dist hightman/xunsearch "*@beta" 添加ini配置文件: 关键词搜索代码:/** * 中文分词搜索 * @param string $gamename 游戏名 * @param bool $is_scws 是否开启中文分词(例如...
2018-09-18 11:05:04
1916
原创 xunsearch(讯搜)部署安装
(1)下载.源码包 cd /usr/local/srcwget http://www.xunsearch.com/download/xunsearch-full-latest.tar.bz2 (2)解压源码包 tar -jxvf xunsearch-full-latest.tar.bz2 注意:如果压缩包解压出错,则执行:yum -y install bzip2 (3)安...
2018-09-18 10:59:59
12743
转载 微信JS-SDK hideMenuItems等接口失效的问题
微信JS-SDK是微信公众平台面向网页开发者提供的基于微信内的网页开发工具包。相信我们的朋友都非常熟悉。不过路过的同学注意下,这里有一个大坑:界面操作隐藏右上角菜单接口wx.hideOptionMenu();显示右上角菜单接口wx.showOptionMenu();关闭当前网页窗口接口wx.closeWindow();上面的3个接口目前为止,在iPhone下是正常的。但是下面的4个...
2018-08-03 10:48:27
19672
1
转载 Linux下添加自定义脚本到开机自启动
写一个脚本,名字为:autostart.sh,放在/etc/init.d/目录下,赋予权限chmod +x /etc/init.d/autostart.sh代码如下#!/bin/sh#chkconfig:2345 90 20 #description:Autostart server daemon#shell脚本主体自定义#....... start ....#.........
2018-06-07 18:56:04
1371
原创 linux swoole 创建脚本开机启动
常规的swoole服务,每次linux重启之后,就得手动开启,比较麻烦,所以更换成linux开机自启的方式。在/etc/init.d目录下创建start_websocket文件vi start_websocket#!/bin/sh# chkconfig: 23456 90 10 # description: websocket startcd xxx #进入程序目录nohup php i...
2018-06-07 18:31:48
3371
1
原创 php swoole websocket消息推送
背景:目的实现web网页端消息推送通知。传统做法,ajax轮询则太耗费资源,所以改用swoole的websocket服务器实现功能。1.用户登录成功,js的websocket进行握手;2.服务端接收到用户握手信息,保存当前用户的设备id(即fd)至redis中,并执行消息查询推送动作;3.产生新消息时,通过curl调用请求swoole的HttpServer服务的request进行触发消息推送;4....
2018-06-06 17:56:48
3587
转载 PHP json_encode转换空数组为对象
问题描述:php在给端提供接口,比如PC和安卓,ios等,如果返回json格式的数据,当返回数据的为数组,且key为字符串时,json化后将返回jsonObject,但是如果是空数组,有可能返回的就是jsonArray,数据结构不一致导致端解析json失败。如:12345678$arr = [ 'id' => 123., 'name' => 'andrew',]; $jso...
2018-06-05 10:19:31
7199
原创 php 长链接生成短链接
将长链接:http://www.appapi.com/index/index/index转成短链接:http://www.appapi.com/s/DaP88O实现代码:function shorturl($url,$domain = 'http://www.appapi.com/') { $charset = "0123456789ABCDEFGHIJKLMNOPQRSTUVWX...
2018-06-04 20:44:55
6125
1
原创 linux 安装vsftpd
通过yum安装vsftpdyum install -y vsftpd修改vsftpd的配置文件vi /etc/vsftpd/vsftpd.conf修改配置文件如下:1.不允许匿名访问anonymous_enable=NO2.允许使用本地帐户进行FTP用户登录验证local_enable=YES3.使用户不能离开主目录当chroot_list_enable=YES,chroot_local_user...
2018-06-01 15:51:40
542
原创 thinkphp5 删除runtime文件
/** * 清除模版缓存 不删除cache目录 */ public function clear_sys_cache() { Cache::clear(); $this->success( '清除成功', 'index/index' ); } /** * 清除模版缓存 不删除 temp目录 */ public function clear_temp_ahce() ...
2018-06-01 15:49:42
5445
原创 基于tp5的在线文档
1.安装// 使用composer安装composer require hao/api-doc####2、配置参数 安装好扩展后在 application\extra\ 文件夹下会生成 doc.php 配置文件 在controller参数中添加对应的类'controller' => ['app\\api\\controller\\Demo']####3、在相关接口类中增加注释参数( grou...
2018-05-29 18:33:27
2197
原创 composer 阿里大鱼短信扩展
# 阿里大鱼短信平台## 开源地址https://github.com/JZhao1020/alidayu##1.安装```composer require hao/alidayu ```##2.实例化```$config = [ 'key_id' => '', // AccessKeyId 'key_secret' => '', 'si...
2018-05-29 18:31:26
1562
原创 php编译报错configure: error: C++ preprocessor “/lib/cpp” fails sanity check 以及解决办法
php安装报错,其中一个小细节:checking how to run the C++ preprocessor... /lib/cppconfigure: error: in `/usr/local/src/php-7.0.10':configure: error: C++ preprocessor "/lib/cpp" fails sanity checkSee `config.log'...
2018-05-26 10:19:57
3937
原创 linux下mysql备份
利用crontab定时任务执行脚本,定时备份#!/bin/sh#判断是否存在某个文件夹,不存在则创建path="/data/mysql/`date +%Y%m%d`";//判断文件夹是否存在,不存在则创建if [[ ! -d "${path}" ]]; then mkdir -p ${path}fi //获取当前时间:年月日时分秒datetime=`date +...
2018-05-25 16:19:47
1191
原创 Linux下的mysql主从配置
主服务器:192.168.110.129从服务器:192.168.110.130 注:主从服务器同步的数据库类型、引擎保持一致1. 修改主服务器mysql/etc/my.cnf配置[mysqld]#打开日志(主机需要打开)log-bin=mysql-bin#服务器idserver-id=1#给从机同步的库binlog-do-db=数据库名#自动清理1天前的log文件expire_logs_days...
2018-05-25 11:16:54
399
转载 win7宿主机访问linux 虚拟机的tomcat、nginx
首先强调下,主机与VMware搭建的虚拟机之间的以NAT 方式通信。粗略描述成功访问服务步骤:1、确保你的虚拟机里已经开启tomcat 或者nginx 服务;2、在虚拟机里添加端口转发配置,在vmware 菜单栏 编辑->虚拟网络编辑器... 弹出类似下图:点击 ”添加...“ 添加你想要通过主机的哪个端口转发到虚拟机上的哪个服务端口,如图:点击确定,基本搞定。如果本地访问不上 你...
2018-05-24 16:48:21
1702
原创 linux-php-redis安装
安装下载,解压,编译:①wget http://download.redis.io/releases/redis-4.0.9.tar.gz②tar xzf redis-4.0.9.tar.gz③cd redis-4.0.9④make 编译(安装redis时遇到zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录则执行:m...
2018-05-07 10:51:17
247
原创 php-swoole安装配置
1. 下载源码cd /usr/local/srcgit clone https://gitee.com/swoole/swoole.git cd swoole使用phpize执行生成configure等文件(find / -name phpize进行查找) 2. 编译安装①./configure --with-php-config=/usr/bin/php-config②make③make ins...
2018-05-05 18:35:38
646
原创 lamp环境搭建
Linux-apache安装1.安装yum -y install httpd2.开启apache服务systemctl start httpd.service3.设置apache服务开机启动systemctl enable httpd.service Linux-php 安装更新安装源rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-releas...
2018-05-04 16:09:59
180
原创 lnmp环境搭建
Linux-nginx安装更新安装源:rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm 安装:yum -y install nginx Nginx命令:service nginx start 开启service nginx restart 重启ser...
2018-05-04 15:55:42
277
转载 composer 创建一个github 项目,然后可以通过composer下载
1.在github申请账户,申请完成就可以创建项目了2.创建一个composer.json文件:内容如下:[html] view plain copy{ "name": "zqy234/terrytest", "description": "Yii2 zqy234 terrytest", "keywords": [ "yii2", "terr
2018-04-20 11:15:26
2627
转载 centos7下yum安装ffmpeg
安装EPEL Release,因为安装需要使用其他的repo源,所以需要EPEL支持 yum install -y epel-release如果出现缺少Code提示,可以:sudo rpm –import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7安装完成之后,可以查看是否安装成功yum repolist 安装Nux-Dextop源导入一个Codesudo rpm –i...
2018-02-24 16:07:39
3015
1
转载 Nginx中如何限制某个IP同一时间段的访问次数
如何设置能限制某个IP某一时间段的访问次数是一个让人头疼的问题,特别面对恶意的ddos攻击的时候。其中CC攻击(Challenge Collapsar)是DDOS(分布式拒绝服务)的一种,也是一种常见的网站攻击方法,攻击者通过代理服务器或者肉鸡向向受害主机不停地发大量数据包,造成对方服务器资源耗尽,一直到宕机崩溃。cc攻击一般就是使用有限的ip数对服务器频繁发送数据来达到攻击的目的,ngi
2017-12-21 14:53:17
1735
原创 Linux 接口并发压力测试
webbench安装:wget http://home.tiscali.cz/~cz210552/distfiles/webbench-1.5.tar.gz(wget http://www.ha97.com/code/webbench-1.5.tar.gz) tar zxvf webbench-1.5.tar.gzmakesudo make install 执行:
2017-12-21 14:47:59
7214
转载 php mysql 防并发加锁事务处理
1、背景:现在有这样的需求,插入数据时,判断test表有无username为‘mraz’的数据,无则插入,有则提示“已插入”,目的就是想只插入一条username为‘mraz’的记录。2、一般程序逻辑如下:$conn = mysqli_connect('127.0.0.1', 'root', '111111') or die(mysqli_error());
2017-12-21 14:35:13
2878
原创 PHP 设置调试工具XDebug PHPStorm IDE
先下载PHP扩展Xdebug https://xdebug.org, 可以复制自己的phpinfo粘贴到https://xdebug.org/wizard.php中, 会生成需要下载的版本, php.ini的设置语句.下载好之后放入php目录的ext文件夹中, 然后设置php.ini, 在最后加上zend_extension = C:\path\php\ext\php_xdebug
2017-07-04 15:11:45
344
原创 php 正则表达式
匹配是否含有特殊字符if (preg_match("/[\'\/~`\!@#\$%\^&\*\(\)_\-\+=\{\}\[\]\|;:\"\,\.\?\\\]/", '测试')) { echo 'no'; }else{ echo 'yes'; }匹配urlif (!preg_match("/^(https
2017-06-15 17:25:57
425
原创 php ini_set修改配置文件的值
两种修改时区1 date_default_timezone_set('Asia/Shanghai');//'Asia/Shanghai' 亚洲/上海2 date_default_timezone_set('Asia/Chongqing');//其中Asia/Chongqing'为“亚洲/重庆”3 date_default_timezone_set('PRC');//其中
2017-06-13 14:55:56
464
原创 php curl 实现文件上传
/** * @param string $url 请求地址 * @param string $filePath 上传文件的绝对路径 * @param array $postParam 数据 * @return array */ public function uploadFile($url, $filePath, $postParam)
2017-06-13 14:11:29
1349
原创 PHP接入umeditor(百度富文本编辑器)
百度官网上下载 umeditor 简版的富文本编辑器(这里) UMEDITOR 完整demo umeditor/themes/default/css/umeditor.css" type="text/css" rel="stylesheet"> umeditor/third-party/jquery.min.js"> umeditor/umedit
2017-06-06 11:25:50
3968
1
转载 Apache中限制和允许特定IP访问
Apache中限制和允许特定IP访问Options AllAllowOverride NoneOrder Deny,AllowDeny From allAllow From 192.168.0.0/24Allow From 127.0.0.1Allow From 59.37.x.x/28上面这一段的意思是对/var/www目录下面的文件,只允
2017-05-16 16:02:09
972
原创 js获取url参数
方法一:正则分析法 function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); if (r != null) return unescape(r[2])
2017-04-28 13:54:05
275
原创 php数组去重
public function array_unique(){ $array2D = array('first'=>array('title'=>'1111','date'=>'2222'),'second'=>array('title'=>'1111','date'=>'2222'),'third'=>array('title'=>'2222','date'=>'3333'));
2017-04-27 16:12:30
578
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人