将atom打造成二十一世纪最装那啥的php IDE

之前在windows平台使用的php IDE一直是eclipse for php,因为之前做java开发,所以对eclipse很有感情,debug、版本控制都很方便,但是使用eclipse的前提必须得安装jdk,思前想后还是决定放弃eclipse这个重型的IDE,直到发现atom竟然能对代码进行debug之后,我对atom的热爱更是义无反顾。

一、atom安装。

atom可以直接通过apt-get安装,也可以到官网下载.deb文件,双击后就能安装,更接近windows的操作体验。

安装atom的命令行:

sudo add-apt-repository ppa:webupd8team/atom

sudo apt-get update

sudo apt-get install atom

二、atom的基本使用。

1、打开atom,菜单栏file->Add Project Folder选择项目所在的文件夹就能添加到左侧目录中了,如果目录不存在,可以通过ctrl+\来打开、隐藏。

2、插件安装。

Shift+ctrl+p在弹出的窗口中输入setting,确定后跳转到atom的设置中,左侧最下变的install是安装插件的地方,输入插件名称,搜索后安装就可以了。

推荐插件:

linter

实时语法检查,保证代码语法正确性。

linter-csslint

CSS代码检查。

linter-jshint

Javascript代码检查。

linter-php

PHP代码检查。

goto-definition

函数跳转。

docblockr

辅助生成注释。

file-icons

美化一下文件图标。

atom-beautify

格式化代码

格式php代码需要安装php-cs-fixer插件,才能正常使用。

curl http://get.sensiolabs.org/php-cs-fixer.phar -o php-cs-fixer
sudo chmod a+x php-cs-fixer
sudo mv php-cs-fixer /usr/local/bin/php-cs-fixer

以上插件没什么解释的,安装就能用了,装上这些插件以后IDE的基本功能已经具备了80%,后面的不看也罢。

3、atom支持分屏。点住打开的文件拖拽就可以,这是一个高效装x的利器,如果感觉装的还不够,推荐安装activate-power-mode插件,整个世界都会随着你的代码颤抖。

三、xdebug的安装使用。

1、安装php-debug插件。

2、安装php debug拓展。

sudo apt-get install php5.6-xdebug

3、修改php.ini文件。

php.ini位置在:/etc/php/5.6/apache2/php.ini

在文件末尾加上一下代码:

xdebug.remote_enable=1
xdebug.remote_host=127.0.0.1
xdebug.remote_connect_back=1 # Not safe for production servers
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_autostart=true

打开php.ini的时候,用sudo gedit /etc/php/5.6/apache2/php.ini打开,否则没有写权限无法保存。

最后重启apache2就可以了。

4、debug插件的使用。

打开一段php代码,在代码行号处打上断线,ctrl+alt+d打开debug控制台,只有在控制台打开的时候,断点才有效,然后在浏览器中打开对应的网页,回到atom查看debug数据。

控制台上,continue是跳过断点,step over是下一步。

一个ubuntu phper的自我修养(atom)的更多相关文章

  1. 一个ubuntu phper的自我修养(杂记)

    ubuntu使用杂记 1.flatabulous安装使用. flatabulous是一个ubuntu图标主题. 使用它,必须得安装tweak插件. sudo add-apt-repository pp ...

  2. 一个ubuntu phper的自我修养(ubuntu安装)

    ubuntu安装篇 一.ubuntu下载 到ubuntu官网下载适合自己电脑配置的系统版本,此处不做展开. 二.制作USB启动盘 在windows下制作USB启动盘,工具是universal usb ...

  3. 一个ubuntu phper的自我修养(lamp)

    lamp环境搭建出坑记 lamp虽然大家都懂,但是还是要解释一下先,要做的是一个狭义的解释,以对应我们即将搭建的环境. L指linux(ubuntu). A指apache(apache2). M指my ...

  4. 一个ubuntu phper的自我修养(workbench)

    workbench从此和navicat的激活码说再见 workbench是一个免费易用功能强大的mysql图形化管理软件,navicat上用到的功能,workbench上都能找到. 一.workben ...

  5. 第八周读书笔记(人月神话X月亮与六便士)——到底什么才是一个程序员的自我修养?

    写了这么久的读书笔记,涉及到问题大多是一些如何把软件工程做好,如何把自己的职业生涯做好.但总感觉逻辑链上缺了一环,亦即:我们为什么要把软件工程做好,我们成为一名优秀的职业生涯的意义到底在于什么?我觉得 ...

  6. 《web全栈工程师的自我修养》读书笔记

    有幸读了yuguo<web全栈工程师的自我修养>,颇有收获,故在此对读到的内容加以整理,方便指导,同时再回顾一遍书中的内容. 概览 整本书叙述的是作者的成长经历,通过经验的分享,给新人或者 ...

  7. 程序员的自我修养(2)——计算机网络(转) good

    相关文章:程序员的自我修养——操作系统篇 几乎所有的计算机程序,都会牵涉到网络通信.因此,了解计算机基础网络知识,对每一个程序员来说都是异常重要的. 本文在介绍一些基础网络知识的同时,给出了一些高质量 ...

  8. GIS制图人员的自我修养(2)--制图意识

    GIS制图人员的自我修养(2)--制图意识 by 李远祥 上次提及到GIS制图人员的一些制图误区,主要是为GIS制图人员剖析在制图工作中的一些问题.但如何提高制图的自我修养,却是一个非常漫长的过程,这 ...

  9. GIS制图人员的自我修养(1)--制图误区

    GIS制图人员的自我修养 by 李远祥 最近一直坚持写GIS制图的技术专题,并不是为了要介绍有什么好的技术和方法去制图,而是要告诉所有从事这一方向的人员一个铁铮铮的实现--要做好GIS制图,必须加强自 ...

随机推荐

  1. php5.6 一键编译

    1. 替换成aliyun的源 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup wget -O ...

  2. netfiler源代码分析之框架介绍

    netfiler框架是在内核协议栈实现的基础上完成的,在报文从网口接收,路由等方法实现基础上使用NF_HOOK调用相应的钩子来进入netfiler框架的处理,如 ip_rcv之后会调用NF_HOOK( ...

  3. C++学习笔记 知识集锦(二)

    1. 命名规范 2. 代码格式 3. QString的判断 4. 对象的判空 5. 隐式接口&显式接口 6. vector&string 7. static 8. const 9. v ...

  4. randow()方法

    Math库里的static(静态)方法random(),该方法的作用是产生0和1之间的一个double值. 注意产生的值包括0不包括1.

  5. Python Set Literals

    现有3种方式创建set() >>> def f(): ... return set([1, 2, 3]) ... >>> def h(): ... return s ...

  6. Quartz 入门详解

    Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用.Quartz可以用来创建简单或为运行十个,百个, ...

  7. Hibernate不能自动建表解决办法

    最近开始学Hibernate,看的是李刚的那本<轻量级java ee企业应用实战>.头一个hibernate程序,我原原本本的按照书上例子写下来,同时只是改动了些mysql的连接参数,并且 ...

  8. 开始学习c语言

    学习c语言的第一篇博客,心里的感觉说不出来,不知道能不能坚持下去,我是一名工作了差不多2年的phper,其实我本来是想学习数据结构和算法的,但是尼玛这年头那些书的例子都不是php,动不动就是c,jav ...

  9. EaeyUI

    基础 定义 一个轻量级的JavaScript框架 基本用法 $(function(){代码}) 相当于window.load()(当窗口加载完毕后触发) 选择器是jQuery的根基 通过选择器选中元素 ...

  10. 建模分析之机器学习算法(附python&R代码)

    0序 随着移动互联和大数据的拓展越发觉得算法以及模型在设计和开发中的重要性.不管是现在接触比较多的安全产品还是大互联网公司经常提到的人工智能产品(甚至人类2045的的智能拐点时代).都基于算法及建模来 ...