背景:redis这个新产品在sns时很火,而memcache早就存在, 但redis提供出来的功能,好多网站均把它当memcache使用,这是大才小用,这儿有30个方法来使用redis,值得了解。
这篇文章主要介绍了30个php操作redis常用方法代码例子,本文其实不止30个方法,可以操作string类型、list类型和set类型的数据,需要的朋友可以参考下
redis的操作很多的,以前看到一个比较全的博客,但是现在找不到了。查个东西搜半天,下面整理一下php处理redis的例子,个人觉得常用一些例子。下面的例子都是基于php-redis这个扩展的。 Continue reading
Vue经典开源项目汇总
Vue.js(读音 /vjuː/, 类似于 view)是一套用于构建用户界面的渐进式框架,主要用于快速的构建前端界面,与其它大型的前端框架不同,Vue被设计为可以自底向上逐层应用。
相比Angular.js来说,Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合,是初创项目的前端首选框架。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue也完全能够为复杂的单页应用提供驱动。
正式因为Vue.js具有易用、灵活、高性能和渐进式等特点, 才使得Vue.js成为当前三大流行的JavaScript 框架之一。
工欲善其事,必先利其器。Vue的快速发展和崛起也得益于其快速发展的社区环境。为了实现快速的迭代,Vue社区涌现出了一大批的开源项目,借助这些开源项目,我们可以实现快速的迭代升级。 Continue reading
PHP优秀资源
白帽子黑客抓包工具排行榜
网络安全的白帽子黑客都有一些心水的抓包工具,抓包工具是拦截查看网络数据包内容的软件。白帽子黑客用抓包工具来分析报文,针对漏洞做一些渗透测试。下面对白帽子黑客常用的五种网络抓包工具做了个整理。 Continue reading
PHP性能优化之连接超时
这里抛出一个常见问题:PHP环境下脚本运行超时,尤其是处理后台服务数据处理时经常会遇到。
Maximum execution time of 120 seconds exceeded
常规解决排查方式
我们的排查思路一般从数据量开始,主观判断由于程序需要处理的数据过多,造成运行处理时间过长,超出了系统限定的脚本最大执行时间。那么真的是处理的数据过多,还是程序写法或者逻辑存在风险问题?我们从以下几个方面分析 Continue reading
宝塔配置本地环境完成后,网站伪静态提示:No input file specified.
本地原来是phpStudy集成工具,但IIS没有使用集成中的,是自己直接windows中安装的,本地测试时直接IIS中新建网站,设置新端口,只使用着phpStudy中的mysql和php。
最近的这个项目基本是使用SVN上传到服务器的,直接在实际环境中开发,有好处也有坏处。好处就是开发完成后,直接就可以使用了;不好的地方就是上传太频繁。那么在本地开发的优缺点正好与上面的相反,好处就是不用频繁上传等,改完直接浏览器测试;不好的地方就是开发完成后,放到实际环境中就可能会出现N吨BUG,也是很头疼的。
最近这项目由于上传操作太频繁了,所以想着远程与本地开发结合一下,突然想不用phpStudy,试试宝塔,下载>>安装>>基础配置>>建站测试,也是折腾了有十个八个小时的样子
现在基本环境是apache+php+mysql Continue reading
Console命令
一、显示信息的命令
0 1 2 3 |
console.log("normal"); // 用于输出普通信息 console.info("information"); // 用于输出提示性信息 console.error("error"); // 用于输出错误信息 console.warn("warn"); // 用于输出警示信息 |
二、点位符:字符(%s)、整数(%d或%i)、浮点数(%f)和对象(%o); Continue reading
Linux开机自动启动svnserve服务的方法
开机自动启动svnserve服务的方法,开机启动svnserve
1、编辑rc.local文件
vim /etc/rc.d/rc.local
2、加入如下启动命令
/usr/bin/svnserve -d -r /home/svn Continue reading
MySQL查重、去重
mysql数据库查重、去重
查重一:
0 |
SELECT COUNT(*),`name`,`data` FROM `setting` GROUP BY `name` HAVING count(*) > 1; |
结果: Continue reading
微信公众号个性化菜单接口:创建个性化菜单
为了帮助公众号实现灵活的业务运营,微信公众平台新增了个性化菜单接口,开发者可以通过该接口,让公众号的不同用户群体看到不一样的自定义菜单。该接口开放给已认证订阅号和已认证服务号。
开发者可以通过以下条件来设置用户看到的菜单:
0 1 2 3 4 5 |
1、用户标签(开发者的业务需求可以借助用户标签来完成) 2、性别 3、手机操作系统 4、地区(用户在微信客户端设置的地区) 5、语言(用户在微信客户端设置的语言) |
个性化菜单接口说明:
0 1 2 3 4 5 6 |
1、个性化菜单要求用户的微信客户端版本在iPhone6.2.2,Android 6.2.4以上,暂时不支持其他版本微信 2、菜单的刷新策略是,在用户进入公众号会话页或公众号profile页时,如果发现上一次拉取菜单的请求在5分钟以前,就会拉取一下菜单,如果菜单有更新,就会刷新客户端的菜单。测试时可以尝试取消关注公众账号后再次关注,则可以看到创建后的效果 3、普通公众号的个性化菜单的新增接口每日限制次数为2000次,删除接口也是2000次,测试个性化菜单匹配结果接口为20000次 4、出于安全考虑,一个公众号的所有个性化菜单,最多只能设置为跳转到3个域名下的链接 5、创建个性化菜单之前必须先创建默认菜单(默认菜单是指使用普通自定义菜单创建接口创建的菜单)。如果删除默认菜单,个性化菜单也会全部删除 6、个性化菜单接口支持用户标签,请开发者注意,当用户身上的标签超过1个时,以最后打上的标签为匹配 |
个性化菜单匹配规则说明:
0 1 2 |
个性化菜单的更新是会被覆盖的。 例如公众号先后发布了默认菜单,个性化菜单1,个性化菜单2,个性化菜单3。那么当用户进入公众号页面时,将从个性化菜单3开始匹配,如果个性化菜单3匹配成功,则直接返回个性化菜单3,否则继续尝试匹配个性化菜单2,直到成功匹配到一个菜单。 根据上述匹配规则,为了避免菜单生效时间的混淆,决定不予提供个性化菜单编辑API,开发者需要更新菜单时,需将完整配置重新发布一轮。 |