PHP

A collection of 4 posts
PHP小工具连接Twitter API V2
以兴趣为工作

PHP小工具连接Twitter API V2

清明假期后突然来了一个需求:要在一个PHP服务器环境中,连接推特API获取数据,筛出一批有过特定行为的关注者名单。看推特文档,这个事按理该用Account Activity API,通过自定义webhook来实现对这些特定行为的即时处理,但这个API貌似要申请Enterprise权限,还挺麻烦。于是决定还是用已经有的开发者权限,连接Twitter API v2,跑通拿到数据就齐活了。 Twitter API的文档相当完备,条分缕析、详尽规整。但如果完全没有相关经验也很容易迷失其中,茫然无从下手。建议挑一个最核心的需求做为突破点,直接看具体细节。对我来说这个点就是获取关注者,这部分文档可以在左侧导航栏中依次点击Twitter API->Twitter API v2->Users->Follows进入。在这个数据点(endpoint)的文档页中,右侧上方有四个内容标签,分别是Introduction(简介)、Quick Start(快捷上手)、Migrate(从版本1.1迁移到2的说明)以及API reference(API参考)。简介部分都是blah blah的废话,快捷上手部分有很明
7 min read
PHP程序猿成军训练营之开发环境搭建
以兴趣为工作

PHP程序猿成军训练营之开发环境搭建

新年伊始,有幸给刚入职的PHP开发小伙伴们主持成军训练,为此写了本文,方便大家一步步用Vmware虚拟机搭建起CentOS+Nginx+MariaDB+PHP7+Git的开发环境。因为主要在开发者个人计算机中运行,因此在安全和性能调优方面完全没有涉及。 CentOS7 1. 下载CentOS 7.5 64位操作系统光盘安装镜像文件,在Vmware Workstation Player中建立新虚拟机,使用前述镜像文件安装操作系统,将虚拟磁盘拆分成多个文件,内存1G,处理器1个,网络适配器选“桥接模式”; 2. 进入CentOS安装向导后,选择最小配置软件、设置国内时区、时间、语言支持增加中文、设置主机名、配置局域网,设置root用户密码; 3. 完成系统安装后使用root用户登录,更新系统; yum update 4. 安装网络工具。 yum install net-tools Nginx 1.12.2 1. 安装依赖项;
6 min read
生成汉字卡牌的PHP小应用
一起学习

生成汉字卡牌的PHP小应用

上初中时,班里曾经有人发明了一套用化学元素信息做卡牌的游戏,风靡一时。可惜现在已经完全想不起来当时的玩法了。包子上小学后,包爸就想着也效仿这种模式,让包子和小伙伴们有的玩。于是断断续续花了一个学期的时间,在包妈的协助下,和包子一起琢磨制作出大脑锛儿汉字卡牌游戏。临近期末时,规则基本定型,需要做一套汉字卡了,为了省事,自己写了一个PHP web app,到汉典网站上抓取所需的汉字信息,生成可打印的HTML文件。下面就是程序代码,有类似需求的可以省去再造车轮了。当然,不懂代码的话,也可以到我们的大脑锛儿汉字卡牌游戏网站上直接生成。 应用的基本流程是:检查是否有提交的汉字post数据,没有就展示填写汉字的表单网页。如果有数据,就先到使用序列化保存的文本数据文件中寻找是否已有这个汉字的信息,没有就到汉典网站中抓取,并保存到数据文件中。最后组成汉字卡牌数据,使用html模板进行展示。 需要说明的一个是费了一些功夫才搞明白的汉典单个汉字网页url的生成规则(代码第131行),举例来说,“汉”字的网页url是: http://www.zdic.net/z/1c/js/6C49.htm
7 min read
利用Linux虚拟主机打造自己的网络信息传送门
生活碎碎念

利用Linux虚拟主机打造自己的网络信息传送门

最近完成了一个日本公司的库存管理系统,开发费很准时的汇到了我的中行账户里。收日元是件很有成就感的事,那一堆零,看着就爽……不过这都是浮云啊,不换成人民钱怎么给我家包子买奶粉啊。最近日本受灾,日元汇率波动挺大,听某些专家讲,因为要筹集重建资金,日元总体还是要涨的。所以我给自己定了一个门槛,打算等汇率过了8.09才去兑换。可是要为了这个每天都要想着上网刷新中行的外汇牌价页面,感觉很麻烦,错失良机的可能性极大。所以就想做一个定时抓取网上汇率信息的web service,时时刻刻帮我盯着,一旦超过阙值,就用短信通知自己。感觉这个服务就象Portal–传送门,网上信息从一头儿扎进去,转啊转的,从另一头儿的个人短信端(email也行)就钻出来了。虽然我玩Portal游戏玩到头晕要吐,到第17关再也坚持不下去认输放弃了,但是自己做这个服务还是没什么问题的,花了周末一天时间搞定,也算是个实用的weekend project,记录下来给有类似需求的人做个参考。 事前准备 1. 要获取的信息是互联网上公开的,信息展现页面格式基本固定无变化,以便机器按照一定的规律定时抓取; 2. 有管理员权限的
6 min read