Becomin' Charles

算法 | LNMP | Flutter | Mac

Becomin' Charles

开发WordPress插件,总是免不了要存储一些数据的。这些数据一般有两种类型,配置信息或者数据本身。配置信息一般可以用来定制插件运行时的一些参数,属于插件的属性。对于配置信息的存储,一般都是用WordPress Option API。WordPress自己就存储了很多博客运行时的自定义参数,这个接口也可以用来给插件存储自己的配置信息,其数据结构通用程度相当高,主要就是键值对(key-value)的形式。使用API get_optionupdate_option即可实现读写。具体用法和注意事项,本文不再展开,查看相关文档即可,下文基本关注另一个方面,就是如何存储纯数据。

阅读全文 »

WordPress后台可以看到已安装插件的列表,其中会显示插件的名称(Plugin Name),简要描述(Dsecription),版本(Version),作者(Author),作者主页(Author URI),插件主页(Plugin URI),这些信息并非是存在数据库里的,而是写在了插件入口文件的头部,以注释的形式写在了插件页面中。这种形式,可以将WP系统和插件软件同步元数据信息的成本和复杂度降到最低。

阅读全文 »

使用 Yii 框架编程的时候,我们会很自然的使用 Model 来查询我们的 DB,并进行相应的操作,有些时候,我们因为性能隐患,而不会使用复杂的数据库关系如多对多关系,遇到此类情况,我们一般会在内存中分批查询数据,用程序遍历,主键关联组装数组,操作。

阅读全文 »

应用Yii框架已经有一段时间了,之前也分享了一些Yii框架的入门视频,撰写了一些源代码分析文章。随着使用的深入,越发被Yii框架折服,感叹原作者Qiang Xue对于面向对象编程,Web开发,以及PHP的深厚功力和应用能力。众所周知,像一切Web开发框架那样,Yii框架提供ORM功能,中文叫对象关系映射,能将关系型数据库的数据,映射成对象,从而提供了便捷的数据操作能力。

阅读全文 »

我现在研发的系统中,有很多报表是需要按月统计的,比如月底销售奖励,比如环比增长,都要用到本月、上月,指定月,指定月的上个月这种概念,为了便于存储、查询、计算、比较的方便,我们采用了整型201203这种格式来保存月份,然后就衍生了一系列时间计算的需求。

阅读全文 »

因为工作的关系,最近参与的一个项目中,我目睹了 ExtJS 在项目中发挥出来的强大的生产力,以及在 Web 界面方面强大的表现力,另一方面又很喜欢 js 这个语言,所以,下决心学习以下 Ext JS,正好新版 4.1 发布了,可以学新技术了。本文章为系列文章,内容或来自翻译,或来自自己的学习感悟,属于理解、记忆、融会贯通的一个辅助,也希望对诸君有利。

阅读全文 »

这是一个非常老生常谈的问题了,毕业找工作的时候,我就研究过很多的模板,然后自己找工作时候,非常认真的准备,最近工作了一两年,看老大、组长面试前打印出来的各种简历,帮各种同学、朋友走内部推荐,着实看到了一些简历,所以,我还是谈谈我对简历的一般看法,写这篇文章,主要是给以后找我推荐岗位的童鞋看的,大部分找我推荐岗位的人,都是拖了几层关系拖到我这里,然后把简历发过来,我既然要帮你推荐,那你的简历至少得过我这关,我得对公司负责,得对自己的信誉负责。所以,准备这么篇东西,如果我推荐你来看这篇文章,意味着你的简历不合格,需要改进,但是不代表我对你个人能力有任何看法,只是从形式上看,你的简历不合格。

阅读全文 »

什么是OAuth?

简单来说,OAuth就是一种协议。这种协议的作用是,授权第三方使用你在某服务商处储存的私人数据,但是并不需要告诉第三方你的密码。OAuth并不是一个新发明的协议,而是已有的各种解决方案的一个去芜存菁,融合了当时所有解决方案(Google AuthSub, AOL OpenAuth, Yahoo BBAuth, Upcoming API, Flickr API, Amazon Web Services API, 等等)的优点。OAuth协议的研发始于2006年11月,2007年10月3日,OAuth Core 1.0最终草案发布,其1.0版本发布于2007年12月,并迅速成为业界标准,2008年6月修复了一个安全漏洞,发布了OAuth 1.0 Revision A(OAuth 1.0a),2010年4月,OAuth 1.0作为RFC5849发布。

OAuth与互联网开放

OAuth协议虽说不是一个通过认证的国际标准协议,但是它是事实上的互联网公认的标准。现今,开放已经成为了互联网的主流,而OAuth在其中扮演了不可或缺的角色,可以说OAuth是互联网开放的基石。各种平台服务商,都通过OAuth协议,部分开放了自己的用户数据,使得新兴的互联网服务,可以更加方便地访问到用户在各种网络服务中存储地私人数据,从而更加便利而且快捷地提供更为优质、有针对性地服务。这种用户数据的开放,是建立在安全和授权的基础上的,也即,只有用户亲自授权,其存储于某互联网服务的数据才可以被第三方调用,这种授权可以精确指定,比如用户只希望授权访问自己地照片,但是不可以查看自己照片底下的评论,此外,用户在授权第三方访问自己的私有数据时,不需要告知其自己的密码是什么,这也就保护了用户的密码不备泄漏和篡改。

在以上机制的保障下,任何网络服务,都可以使用OAuth协议,开放用户数据的访问,也可以请求用户访问其位于其他网络服务,如大型平台服务,社区服务提供的数据。在安全保障下的开放与共享,促进了互联网的进一步繁荣。

各种知名网络平台、服务提供商采用的OAuth协议

服务商

OAuth版本

文档

Google

OAuth 2.0

文档

Facebook

OAuth 2.0

文档

Twitter

OAuth 1.0a

文档

新浪微博

OAuth 2.0

文档

腾讯微博

OAuth 1.0a

文档

豆瓣

OAuth 1.0a

文档

回到家已经超过23点了,想想也做不了什么事情了,那就把路上跟同事讨论的问题,拿出来写一写。又是一个老生常谈的问题,就是到底是面向对象还是面向过程?其实关于这个问题,本不该有什么疑惑的,但是随着最近一个项目的经验,我又产生了一些新的看法。

阅读全文 »