小左闲谈

PHP调试配置Eclipse PDT + XDebug

当前位置:首页 » Eclipse
In 学习  @2015-11-07

环境Eclipse PDT+XDebug

由于我之前已经为JAVAAndroid配置好了Eclipse,就不用下载Zend Studio了,本文针对使用Eclipse PDT构建开发PHP环境的用户。
PHP的开发环境Eclipse PDT的安装很简单:
help——Install New Software——选择--All Available Sites--——在Web,XML,Java EE and OSGi Enterprise Development里找到PHP Development Tools (PDT)安装,安装按成后重启Eclipse即可。

然后我们来看看怎么为Eclipse配置调试程序XDebug,使PHP程序可以像JAVA程序一样在Eclipse下方便的进行断点调试等。

1.修改php.ini

首先Wamp安装的时候已经给我们集成了XDebugdll文件,如果没有集成的话你需要到在XDebug的官网去下载这个文件;
我的php.ini中搜索xdebug可以看到:

; XDEBUG Extension

zend_extension = "E:/wamp/bin/php/php5.5.12/zend_ext/php_xdebug-2.2.5-5.5-vc11-x86_64.dll"
;
[xdebug]
xdebug.remote_enable = off
xdebug.profiler_enable = off
xdebug.profiler_enable_trigger = off
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.profiler_output_dir = "E:/wamp/tmp"
xdebug.show_local_vars=0

这里面zend_extension后面的路径就是你下载的dll文件的那个路径;
将这个xdebug.remote_enable = off修改为xdebug.remote_enable = 1
更多配置,根据需要来添加:

;开启自动跟踪  
xdebug.auto_trace = 1 
;开启异常跟踪  
xdebug.show_exception_trace = 1 
;开启异常跟踪  
xdebug.remote_autostart = 1 
;收集变量  
xdebug.collect_vars = 1 
;收集参数  
xdebug.collect_params = 1 
;trace输出路径  
xdebug.trace_output_dir="C:/xdebug" 
;以下三个分别是主机、端口、句柄 
xdebug.remote_host="localhost" 
xdebug.remote_port=9000  
xdebug.remote_handler="dbgp"

保存文件,重启服务器,查看phpinfo();
会看到以下信息:
phpinfo()信息xdebug
phpinfo()信息xdebug
说明XDebug功能已经开启。

2.配置Eclipse

以下配置都在Window——Preferences下进行
2.1. 在PHP——PHP Executablesadd一个配置如下:
PHP Executables
PHP Executables

2.2. 在PHP——Debug下修改配置如下:
PHP——Debug

2.3. 在PHP——Servers下修改配置如下:
因为我使用的是8080端口,所以这里根据本地Apache服务器的httpd.conf文件内设置的端口号来配置。
php——servers

至此,在Eclipse中配置XDebug调试环境就完成了,如有疑问,请留言。

标签: , , ,   评论: PHP调试配置Eclipse PDT + XDebug已关闭评论 

Android编程遇到的小问题20150819

当前位置:首页 » Eclipse
In 学习, 笔记  @2015-08-18

问题一:
代码:

notification = new Notification.Builder(ctx)
                .setContentTitle("Title").setContentText("Text")
                .setSmallIcon(R.drawable.ic_launcher).build();

提示错误:

Call requires API level 16 (current min is 14): android.app.Notification.Builder#build

原因见文档:
public Notification build ()
Combine all of the options that have been set and return a new Notification object.
Added in API level 16
Notification 的 build ()方法是在API level 16才有的;
而我的适配版本是API level 14,需要使用getNotification ()才行。

问题二:
adb服务出现异常,如果想手工关闭adb服务,可以使用下面的命令:

关闭adb服务命令:adb kill-server
启动adb服务命令:adb start-server

问题三:
eclipse下按alt+/快捷键无代码提示故障:
也不知道为啥会出现这个问题,我的情况解决方法如下:
Window - Preferences - General - Keys
1/Restore Defaults恢复默认设置;
2/把word completion的快捷键设置alt+C
3/把Content Assist的快捷键由ctrl+space改成alt+/
4/window->Preferences->Java->Editor->Content Assist->Enable auto activation 选项要打上勾;

标签: , ,   评论: 2枚 

Eclipse中我常用的快捷键及输出调试方法

当前位置:首页 » Eclipse
In 笔记  @2015-07-02

Eclipse的快捷键很多,以下是我会经常使用的,后面重构用到的快捷键还没接触到,先记一下,以后应该会用到,因为我对代码的看相和可读性还是有一定要求的,最开始写出来的代码一般都不怎么好看,重构是写出漂亮代码的必经之路。

package control;
public class Main{
	public static void main(String[] args){
		//编辑中常用到的快捷键:
		//Ctrl+1 快捷修复
		//Ctrl+D 快捷删除
		//Shift+Enter从当前行任意位置快速换行
		//Ctrl+F11 运行最后一次执行的项目
		//Alt+上/下 快速移动行
		//Ctrl+Alt+上/下 快速复制行
		//Ctrl+M 最大化当前工作区
		//Alt+/补全代码
		//Ctrl+/ 快速注释代码
		// /**+Enter 快速添加代码(函数)说明
		// syso+自动补全
		//Ctrl+Shift+O 快速import调用的类
		
		//代码重构常用快捷键:
		//Alt+Shift+R 重命名(类,变量等)
		//Alt+Shift+M 抽取方法
		//Alt+Shift+F 把Class中的local变量变为field变量
		//Alt+Shift+Z 重构中的撤销编辑(Undo)
		//Ctrl+Shift+F 格式化当前代码
	}
}

Eclipse中目前我知道的输出调试:

package control;
public class DebugTest{
	public static void main(String[] args){
		//调试方法:
		//System.out.println输出语句
		System.out.println("this is String debug info");
		//System.err.println可以输出红色错误信息
		System.err.println("this is String error info");
		
		//try catch 错误信息
		int[] ints = new int[20];
		try{
			for(int i = 0; int < 21; i++){
				ints[i] = i+1;
				System.out.println(i+1);
			}
		} catch (Exception e) {
			System.err.println{"数组越界异常"};
		}	
		
		//断点运行调试异常:
		//在当前行双击行号设置断点(快捷键:Ctrl+Shift+B)
		//debug模式执行(小虫子)
		//进入后按F8一步一步执行
		int[] ints = new int[20];
		try{
			for(int i = 0; int < 21; i++){
				ints[i] = i+1;
				System.out.println(i+1);
			}
		} catch (Exception e) {
			e.printStackTrace();//详细错误信息追踪
			System.err.println{"数组越界异常"};
		}	
	}
}
标签: , , ,   评论: 1枚