2017年1月30日

在PowerShell中使用Vim

摘要: 1.需要去Vim官网下载并安装一个可运行于Win8系统的执行文件(ftp://ftp.vim.org/pub/vim/pc/gvim74.exe)。 2.设置PowerShell环境,使能“allow scripts to run”选项,步骤如下: 以管理员的身份运行PowerShell 执行Set 阅读全文

posted @ 2017-01-30 19:56 果然朝辉 阅读(1717) 评论(0) 推荐(0) 编辑

2017年1月3日

git命令

摘要: 获取与创建项目 git init 将一个目录初始化为 Git 仓库 git clone [url] 克隆一个 Git 仓库([url] 为你想要复制的项目) 基本的快照 git add 添加文件到缓存 git add . 递归添加文件到缓存 git add * 不递归添加文件到缓存 git stat 阅读全文

posted @ 2017-01-03 01:07 果然朝辉 阅读(295) 评论(0) 推荐(0) 编辑

2016年12月26日

微信企业号-JS-SDK图像接口

摘要: 使用JS-SDK需要进行四步 主要是步骤二和步骤三,步骤二需要配置,步骤三具体使用相关接口,这里以使用图像接口为例php页面代码主要用来完成步骤二,也就是配置接口public function index() { $signPackage = $this->getSignPackage(); g("smarty") -> assign("appId", $signPac... 阅读全文

posted @ 2016-12-26 09:56 果然朝辉 阅读(1563) 评论(0) 推荐(0) 编辑

微信企业号-管理企业号应用

摘要: 企业开发者可以通过接口实现对应用的头像、名称、简介设置,也可通过接口开启或关闭应用的功能开关。 获取企业号应用 根据开发文档,可以看出,需要两个参数access_token、agentid,agentid在哪里获取,在我上一篇博文里已经讲过了,这里就不重复了,直接上代码public function get() { $agentid = intval($_GET['age... 阅读全文

posted @ 2016-12-26 09:42 果然朝辉 阅读(1556) 评论(0) 推荐(0) 编辑

微信企业号-上传、获取临时素材文件

摘要: 上传、获取临时素材文件,媒体文件类型有图片(image)、语音(voice)、视频(video),普通文件(file) ,这里以上传、下载图片为例上传临时素材文件 根据开发文档,可以看出,需要三个参数access_token、type、media,access_token和type容易解决,media的话就要写一个表单上传过来表单如下:" name="file" method="POS... 阅读全文

posted @ 2016-12-26 09:17 果然朝辉 阅读(11329) 评论(0) 推荐(0) 编辑

微信企业号-身份验证

摘要: 首先要匹配企业应用设置项中的'可信域名'(如果你的redirect_uri有端口号,那'可信域名'也必须加上端口号),否则跳转时会提示redirect_uri参数错误。登录企业号点击点击你要开发的应用设置可信域名 企业获取code 根据开发文档,我们需要拿到企业的CorpID,去到微信企业号的设置即可拿到index.php:/** * 企业获取code */ //填写对应的企业... 阅读全文

posted @ 2016-12-26 08:53 果然朝辉 阅读(1346) 评论(0) 推荐(0) 编辑

2016年12月24日

代理模式

摘要: 定义:在客户端与实体之间建立一个代理对象(proxy),客户端对实体进行操作全部委派给代理对象,隐藏实体的具体实现细节好处:代理对象(proxy)还可以与业务代码分离,部署到另外的服务器。业务代码中通过RPC来委派任务$proxy = new \IMooc\Proxy();$proxy->getUserName($id);$proxy->setUserName($id, $name);query(... 阅读全文

posted @ 2016-12-24 22:14 果然朝辉 阅读(112) 评论(0) 推荐(0) 编辑

面向对象编程的基本原则

摘要: 1.单一职责:一个类,只需要做好一件事情2.开发封闭:一个类,应该是可扩展的,而不可修改的3.依赖倒置:一个类,不应该强依赖另外一个类。每个类对于另外一个类都是可替换的。4.配置化:尽可能地使用配置,而不是硬编码。5.面向接口编程:只需要关心接口,不需要关心实现。来自为知笔记(Wiz) 阅读全文

posted @ 2016-12-24 22:14 果然朝辉 阅读(93) 评论(0) 推荐(0) 编辑

MVC结构

摘要: MVC结构是其它三个经典的设计模式的演变:观察者模式(Observer)(Pub/Sub), 策略模式(Strategy)和组合模式(Composite)。 来自为知笔记(Wiz) 阅读全文

posted @ 2016-12-24 22:14 果然朝辉 阅读(131) 评论(0) 推荐(0) 编辑

配置与设计模式

摘要: 1.PHP中使用ArrayAccess实现配置文件的加载$config = new \IMooc\Config(__DIR__.'/configs');var_dump($config['controller']);path = $path; } public function offsetExists($key) { return isset($this->con... 阅读全文

posted @ 2016-12-24 22:14 果然朝辉 阅读(474) 评论(0) 推荐(0) 编辑

原型模式

摘要: 定义:先创建好一个原型对象,然后通过clone原型对象来创建新的对象。好处:1.原型模式与工厂模式作用类似,都是用来创建对象 2.免去了类创建时重复的初始化操作 3.原型模式适用于大对象的创建。创建一个大对象需要很大的开销,如果每次new就会消耗很大,原型模式仅需内存拷贝即可。$prototype = new \IMooc\Canvas();$prototy... 阅读全文

posted @ 2016-12-24 22:13 果然朝辉 阅读(145) 评论(0) 推荐(0) 编辑

装饰器模式

摘要: 定义:可以动态地添加修改类的功能解析:一个类提供了一项功能,如果要在修改并添加额外的功能,传统的编程模式,需要写一个子类继承它,并重新实现类的方法。使用装饰器模式,仅需在运行时添加一个装饰器对象即可实现,可以实现最大的灵活性。$canvas1 = new IMooc\Canvas();$canvas1->init();$canvas1->addDecorator(new \IMooc\ColorD... 阅读全文

posted @ 2016-12-24 22:13 果然朝辉 阅读(117) 评论(0) 推荐(0) 编辑

迭代器模式

摘要: 定义:在不需要了解内部实现的前提下,遍历一个聚合对象的内部元素好处:相比于传统的编程模式,迭代器模式可以隐藏遍历元素的所需的操作$users = new \IMooc\AllUser();foreach ($users as $user){ var_dump($user);}connect('127.0.0.1', 'root', 'root','test'); $result... 阅读全文

posted @ 2016-12-24 22:13 果然朝辉 阅读(126) 评论(0) 推荐(0) 编辑

注册模式

摘要: 定义:全局共享和交换对象好处:把某些类或者方法注册成全局变量(只需构造一次),调用时直接调用该全局变量即可$db = \IMooc\Register::get('db1');<?phpnamespace IMooc;class Factory{ static function createDatabase() { $db = Database::getInstance()... 阅读全文

posted @ 2016-12-24 22:12 果然朝辉 阅读(167) 评论(0) 推荐(0) 编辑

适配模式

摘要: 定义:可以将截然不同的函数接口封装成统一的API实际应用举例:1.PHP的数据库有mysql,mysqli,pdo3种,可以用适配器模式统一成一致 2.cache适配器,将memcache,redis,file,apc等不同的缓存函数,统一成一致以实际应用举例1作为示例$db = new IMooc\Database\MySQL();//$db = n... 阅读全文

posted @ 2016-12-24 22:12 果然朝辉 阅读(157) 评论(0) 推荐(0) 编辑

导航