Phalcon调试大杀器之phalcon-debugbar安装
Phalcon 是一款非常火的高性能C扩展php开发框架。特点是高性能低耦合,但遗憾的是长期缺少一款得力的调试辅助工具。
目前版本主要以Laravel debugbar的具有功能为蓝本开发,并针对phalcon的功能特征进行了小幅更改,未来版本还将针对phalcon的功能进行进一步扩展丰富。项目地址:http://git.oschina.net/zhuyajie/phalcon-debugbar
readme.md中只是粗略的介绍了phalcon-debugbar的安装方式,新学者可能很难理解其中的安装步骤,Marser下面将给大家介绍下详尽的安装步骤。
1、安装composer
composer是PHP用来管理依赖(dependency)关系的工具。可以在自己的项目中声明所依赖的外部工具库(libraries),Composer会帮助安装这些依赖的库文件。安装命令如下:
#软件安装路径
cd /usr/local/src #linux curl 下载composer
curl -sS https://getcomposer.org/installer | php #移动目录,进行全局安装
mv composer.phar /usr/local/bin/composer
2、composer安装phalcon-debugbar
composer安装成功后,就可以通过composer安装phalcon-debugbar了。这里不推荐通过源码安装的方式,需要解决一些命名空间的依赖问题,否则无法正常使用。使用如下命令通过composer方式安装phalcon-debugbar.
#切到项目的根目录
cd /project-path/
composer require --dev snowair/phalcon-debugbar
再执行如下命令,创建“Runtime/debugbar”目录。
cd vendor
mkdir -p Runtime/debugbar
chmod -R Runtime
此举是为了支持ajax调试和重定向调试功能,debugbar是默认开启了调试数据持久化功能,它会将收集到的调试信息以json文件保存在“Runtime/debugbar”目录下。如果该目录不存在,会试图创建,这需要你的项目目录是可写,否则将会抛出warning错误,建议手动创建,并设置为可写权限(此目录路径可通过debugbar.php配置)。
基本环境准备完毕后,将“/project-path/vendor/snowair/phalcon-debugbar/src/config/debugbar.php”文件复制到当前项目中的配置文件存放目录。debugbar.php是phalcon-debugbar的配置文件,复制到项目的配置文件存放目录的主要目的,一方面是可以为每个项目中的应用模块进行差异化的配置;另一方面也是方便phalcon-debugbar的更新,不会覆盖项目中使用的phalcon-debugbar配置项。
3、修改入口文件,注册服务
修改index.php文件,在文件的最开始处,添加如下代码:
require_once '../vendor/autoload.php'; //根据文件的路径,适当的调整引入的相对路径
然后添加如下代码:
#若此行代码已存在,可不必再添加
$application = new Phalcon\Mvc\Application($di); // 将$di作为构造参数传入 Micro应用也一样: new Phalcon\Mvc\Micro($di); $di['app'] = $application; //将应用实例保存到$di的app服务中
#根据debugbar.php存放的路径,适当的调整引入的相对路径
$provider = new Snowair\Debugbar\ServiceProvider('../config/debugbar.php');
$provider -> register();//注册
$provider -> boot(); //启动 #若此行代码已存在,可不必再添加
echo $application->handle()->getContent();// 在启动debugbar之后,立即handle应用
打开项目 显示成功啦!
Phalcon调试大杀器之phalcon-debugbar安装的更多相关文章
- MySQL高可用性大杀器之MHA
MySQL高可用性大杀器之MHA 提到MySQL高可用性,很多人会想到MySQL Cluster,亦或者Heartbeat+DRBD,不过这些方案的复杂性常常让人望而却步,与之相对,利用MySQL ...
- MySQL高可用性大杀器之MHA | 火丁笔记
MySQL高可用性大杀器之MHA | 火丁笔记 MySQL高可用性大杀器之MHA
- Git ~ 大杀器之一 远程仓库 ~ Git
一般情况ixashi找一台电脑作为服务器的角色 , 每天24小时开机 , 其他扥每个人都从这个 “服务器” 仓库里面克隆一份到自己的电脑上面 并且将各自的提交推送到服务器仓库中 , 也可以从服务器仓库 ...
- 使用docker-compose 大杀器来部署服务 上
使用docker-compose 大杀器来部署服务 上 我们都听过或者用过 docker,然而使用方式却是仅仅用手动的方式,这样去操作 docker 还是很原始. 好吧,可能在小白的眼中噼里啪啦的对着 ...
- 使用docker-compose 大杀器来部署服务 上(转)
使用docker-compose 大杀器来部署服务 上 我们都听过或者用过 docker,然而使用方式却是仅仅用手动的方式,这样去操作 docker 还是很原始. 好吧,可能在小白的眼中噼里啪啦的对着 ...
- [NewLife.XCode]反向工程(自动建表建库大杀器)
NewLife.XCode是一个有10多年历史的开源数据中间件,支持nfx/netstandard,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量结合示 ...
- [转]使用docker-compose 大杀器来部署服务 上
本文转自:https://www.cnblogs.com/neptunemoon/p/6512121.html 使用docker-compose 大杀器来部署服务 上 我们都听过或者用过 docker ...
- 使用docker-compose 大杀器来部署服务
使用docker-compose 大杀器来部署服务 上 我们都听过或者用过 docker,然而使用方式却是仅仅用手动的方式,这样去操作 docker 还是很原始. 好吧,可能在小白的眼中噼里啪啦的对着 ...
- Postgresql-模糊匹配大杀器
# Postgresql-模糊匹配大杀器 ## 问题背景 随着pg越来越强大,abase目前已经升级到5.0(postgresql10.4),目前abase5.0继承了全文检索插件(zhparser) ...
随机推荐
- light oj 1152 Hiding Gold
题目: You are given a 2D board where in some cells there are gold. You want to fill the board with 2 x ...
- node学习笔记1——require参数查找策略
require参数类型 http.fs.path等,原生模块 ./mod或../mod,相对路径的文件模块 /pathtomodule/mod,绝对路径的文件模块 mod,非原生模块的文件模块 mo ...
- iframe及与页面之间的通信
获取iframe对象 iframe元素本身是位于父级页面中的,所以你可以像一个普通元素一样的使用和操作它 代表了iframe内容window对象是作为一个页面的属性加入到iframe中的, 为了让父级 ...
- thinkphp3.2.2邮箱发送
浏览:7510 最后更新:2017-03-18 14:21 分类:类库 关键字: PHPMailer 第一步:准备PHPMailer 将下载的PHPMailer放到ThinkPHP/library/V ...
- Git学习(2)-使用Git 代码将本地文件提交到 GitHub
上次随笔写到git的安装和运用命令窗口创建本地版本库,这次主要讲一下用git代码将本地文件提交到GitHub上. 前提是有一个GitHub账号. 1.创建一个新的版本库,进入到你本地项目的根目录下(我 ...
- FORTH基本堆栈操作
body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2p ...
- 三十天学不会TCP,UDP/IP网络编程 - UDP的实践--DHCP
在经历了一顿忙碌加出去玩了玩之后,我又开始重新更新了~这是最新的一篇~完整版可以去gitbook(https://www.gitbook.com/@rogerzhu/)看到,在gitbook的后台流量 ...
- jdk源码->集合->ConcurrentHashMap
类的属性 public class ConcurrentHashMap<K,V> extends AbstractMap<K,V> implements ConcurrentM ...
- SQL Server 2005的服务器角色(public)的问题
SQL Server 默认会有9个服务器角色,而且这些角色是不能删除和新增.修改的.关于这些角色相关介绍和权限,请参考 其中有一个特殊的角色public,任何登录都会属于该角色,它只拥有的权限是VIE ...
- JDK自带的Timer类
Timer类负责设定TimerTask的起始和间隔执行时间.具体的执行任务,由用户创建一个TimerTask的继承类,并实现其run()方法 timer.schedule()