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 果然朝辉 阅读(1789) 评论(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 果然朝辉 阅读(305) 评论(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 果然朝辉 阅读(1588) 评论(0) 推荐(0)

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

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

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

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

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

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

微信企业号-身份验证

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

posted @ 2016-12-26 08:53 果然朝辉 阅读(1428) 评论(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 果然朝辉 阅读(122) 评论(0) 推荐(0)

面向对象编程的基本原则

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

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

MVC结构

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

posted @ 2016-12-24 22:14 果然朝辉 阅读(138) 评论(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 果然朝辉 阅读(485) 评论(0) 推荐(0)

原型模式

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

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

装饰器模式

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

posted @ 2016-12-24 22:13 果然朝辉 阅读(124) 评论(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 果然朝辉 阅读(134) 评论(0) 推荐(0)

注册模式

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

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

观察者模式

摘要: 定义:当一个对象状态发生改变时,依赖它的对象全部会收到通知,并自动更新,实现低耦合,非侵入式的通知与更新机制场景:一个事件发生后,要执行一连串更新操作。传统的编程方式,就是在事件的代码之后直接加入处理逻辑。当更新的逻辑增加之后,代码会变得难以维护。这种方式是耦合的,侵入式的,增加新的逻辑需要修改事件主体的代码$event = new Event();$event->addObserver(new ... 阅读全文

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

导航