@ZEAL Blog·厉
WWW Zeal Blog
We stand alone,
TOGETHER.
+ 0 - 0 | §XAMPP+PHPStorm+XDebug调试环境

本文仅针对本地Windows开发环境。其他情况下关键点类似,但需要根据实际情况做调整。

XAMPP部分:

先确定你的XAMPP版本有没有自带XDebug模块(查找 Path_to_XAMPP/php/ext/php_xdebug.dll 文件)。如果没有,需要下载对应的正确XDebug模块文件并放到 Path_to_XAMPP/php/ext/ 目录下。然后编辑 Path_to_XAMPP/php/php.ini 配置文件,开启相应的XDebug配置部分。

[XDebug]
zend_extension = "Path_to_XAMPP\php\ext\php_xdebug.dll"
xdebug.profiler_append = 0
xdebug.profiler_enable = 1
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir = "Path_to_XAMPP\logs\xdebug"
xdebug.profiler_output_name = "cachegrind.out.%t-%s"
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "127.0.0.1"
xdebug.remote_port = 9000
xdebug.trace_output_dir = "Path_to_XAMPP\logs\xdebug"
; xdebug.idekey = "phpStorm"

通过 remote_host 和 remort_port 两个参数指定调试客户端位置。对于本地调试缺省即可,如果要远程调试,把参数改到对应接收调试信息的客户端地址即可。改完记得重启apache。

到命令行下输入 Path_to_XAMPP\php\php.exe -m ,如果看到xdebug已经加载,说明配置正确。否则请检查xdebug.dll文件版本是否正确并且配置参数都准确无误。

[Zend Modules]
Xdebug

PHPStorm部分:

基于 IntelliJ IDEA 的PHP IDE开发环境。用过 IntelliJ IDEA based 环境之后,你就会发现 Eclipse based 环境有多SHI(比如 Zend Studio)。

PHPStorm关于 XDebug 的配置有几处地方需要留意(其中Settings建议可以直接设置 Default Settings 以便对所有Project生效,如果你的开发环境比较单一的话):

  • File>Settings>PHP>Debug 下,找到 Xdebug 部分配置信息,看 Debug port 是否是 9000 (其实就是要和前面服务端php.ini里的remote_port保持一致);
  • File>Settings>PHP>Debug>DBGp Proxy 下,IDE key 随便填(好记就行,比如填 phpStrom 。后面浏览器扩展设置部分会用到这个key值);Host填你的XDebug所在服务器地址(本地调试那就是 localhost),Port 填你的HTTP应用所在的端口,缺省当然就是 80 ;
  • File>Settings>PHP>Servers 下,可以添加多个需要Debug的主机信息,便于以后快速切换使用;

浏览器扩展部分:

浏览器与IDE交流实际上是通过一个特定的cookie头信息来握手,所以要让PHPStorm能够抓到Debug请求并进入断点还需要在打开浏览器的时候设置相应的cookie值。

对于Firefox来说,可以安装类似 easy Xdebug (with moveable icon) 这样的扩展来快速激活Debug状态。!注意!有些xdebug相关扩展可能存在不兼容问题导致设置无效,请选择能够正常工作的扩展。一个不行换另一个试试。安装完之后需要设置一下扩展的参数。主要就是 Value of he debug cookie 的值,设置成与前面在DBGp Proxy下设置的IDE key一样即可。

Chrome下应该也有类似的快捷操作扩展可供安装。如果不想安装额外扩展的话,也可以到PHPStorm官网生成一个marklet添加到浏览器收藏夹,每次要调试的时候先执行一下产生正确的cookie信息即可。

=========得瑟的分割线============

至此,配置完毕。日常调试中,要做的步骤通常如下:

  1. 激活PHPStorm IDE的 "Start Listen for PHP Debug Connections" 按钮(右上角 Debug 区类似小电话的图标,带红色禁止小圆圈标志Start Listen for PHP Debug Connections表示未激活,变绿Stop Listen for PHP Debug Connections表示在监听中);
  2. 在PHPStorm中设置想要的断点;
  3. 在浏览器中激活xdebug cookie(如果是Firefox+easy Xdebug扩展的话,点击工具栏的两个图标Toggle xdebug cookie和Toggle Xdebug Profiler cookie,变红表示cookie已成功设置);
  4. 在浏览器中访问对应的PHP页面,正常情况下窗口会弹到 PHPStorm IDE中并进入Debug状态;

然后和大量的土制print调试语句告别吧:) ~~~

标签 ( PHP ) :
+ 0 - 0 | §添加Gmail联系人的多个地址到群组

用 Google Contacts 管理联系人有很多好处自不必多说。出于数据洁癖,通常我会以人为单位来创建,把他的多个Email地址、联系电话等信息都归集合并在一个联系人条目下。

当需要经常性的给固定一群人发邮件时,自然会需要创建一个Group,把相关的联系人都挂在里面。然后写邮件的时候直接输入Group的名字,Gmail会自动提示使用实际的Email地址来填充。但当你把一个联系人添加到Group时,联系人与该Group绑定的Email地址默认是联系人的第一个邮箱地址。

有没有办法指定某个联系人对应于某个Group的对应Email地址是哪一(几)个呢?找了很久,终于发现这个选项设置很低调的放在一个不起眼的地方:

打开联系人 -> 找到联系人姓名下面的联系人所属Group列表区域 -> 每个群组的右侧应该都有一个倒三角标识,点击这个三角 -> 出现Email地址勾选项,选中你希望与Group做对应的Email地址 -> 然后点击勾选项下面的 "Apply" 按钮。

Multiple emails per contact in Gmail group?

Open a contact.  At the top, under the contact's name, you should see a list of contact groups that the contact belongs to.  To the right of each group's name, there should be a small triangle.  If you click that triangle, it will give you a list of email addresses for the contact, and allow you to check the address(es) that you want to belong to that particular group.  Make sure you click "Apply" when you're done.

标签 ( 网络 ) :
发贴统计

Tot 720/1766

日志存档
2014年
2013年
2012年
2011年
2010年
2009年
2008年
2007年
2006年
本 Blog 原创内容
遵循以下授权:

Creative Commons
(创作共用) CC

署名-非商业性
-相同方式分享
ZEAL Blog 基于
Powered byPivot - 1.24.1: 'Arcee'
Pivot1.24.1
开发
系统部署于
Linode.com
Launched @
2005-04-27
Since 2005.04.27  梦想 就像鸡蛋 要么孵化 要么臭掉RSS Feed (Entries) | About me | Back To Home | @ZEAL | zbird.com | 沪ICP备05024379号