热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux下进行PHP开发,相比Windows环境有哪些好处?

一般在Linux下以什么方式或工具进行PHP开发?这样有什么好处呢?在Linux下开发需要加强哪方面能力呢?
一般在Linux下以什么方式或工具进行PHP开发?这样有什么好处呢?在Linux下开发需要加强哪方面能力呢?

回复内容:

这里只讲好处

  • 保持开发环境和线上环境一致,比如一些开发人员会因为手误写错了文件的大小写,本地win调试一切OK,传上去之后就报错了。再比如,php处理图片如果你不想用自带的GD库而用ImageMagick,代码推上线之后,不需要再麻烦地改动。
  • 装软件装扩展是真方便,fedora、ubuntu都有丰富的资源,装个php、mysql,都只是敲几句命令的功夫,win你还得什么xampp、wamp,装完之后你想加个扩展什么的,那就。。。
  • 很多软件只有Linux版,或是win版装起来简直想撞墙,比如Memcache,比如以前的nginx。
  • git为linux而生,更健壮更稳定,不过gui版就。。。。。省略吐槽部分。。。
  • 方便地php编译和php扩展编译,win的编译。。。能别装VC这种怪物级的玩意嘛。。。
  • php部署运维用的一些脚本可以直接调试,直接上线使用。
我用PHP已经4年了,最开始用Linux,到后来用Windows,现在用Mac,觉得可以比较浅的说一下题主的问题。


  • 一般在Linux下以什么方式或工具进行PHP开发?
编辑器:愧对Linux了,我用的发行版开始是Ubuntu,后来是CentOS,一直没有用VIM或者Emacs这些神器,刚开始用Eclipse,后来一直是Sublime Text。大多数常用的编辑器在Linux下都有对应的版本,这点几乎没什么好说的。

环境:本地搭建LAMP/LNMP,这个没什么好说的。


  • 这样有什么好处呢?
目前常见的PHP Web服务器几乎都是Linux的。
在Linux上开发,首先可以保证的是代码的兼容性,不会出现例如楼上说的大小写等问题。
第二,大多数Linux的包管理机制对于PHP开发人员来说非常友好,你只需要输入几个简单的命令,修改为数不多的几个配置文件就可以搭建一个性能相当不错的Web服务器,而在Windows下,简直是痛不欲生。
第三,你可以在平时使用Linux的过程中,学到不少基础的Linux知识,这一点对于PHP开发也是非常有必要性的。

  • 在Linux下开发需要加强哪方面能力呢?
想了一下,在Linux下开发好像没什么特殊的要求,只要会使用一些基本的命令就行了。

我的开发方法一直是在本地写代码,同时sublime text配置sftp插件blog.wpjam.com/m/sublim,在保存时同时上传到测试服务器(Linux),代码运行在测试服务器上,非常的方便,和在本地写差不多。因为Sublime支持Linux,Windows,Mac三个平台,所以这种方法是随时可以无痛苦的迁移的。

下面来吐槽一下Linux。我实在不能忍受Linux的图形界面,桌面截图一条龙,运行起来一条虫。Mac、Windows的图形界面都可以秒掉Linux的,不知道是怎么回事,我用Linux老是可以把图形界面搞崩溃,难道是我的坐姿不对?还有恶心的中文输入法,不管怎么配置,连Mac的中文输入都比不上,能和Windows去比?

总结:
Linux用来老老实实的做服务器就行了,在你是真的要写代码的情况下,还是建议不要用Linux作为桌面,但是建议让你正在调试的代码跑在Linux的环境下面。 多方面考虑 肯定还是WIN下方便...
1.招人成本问题 不是每一个人都非常熟练LINUX下环境.招这样的人 你得开多少工资.
2.人力培训问题 好吧,你说招个不会的人,来培训成LINUX下开发,总的有人教,有人带吧?再者万一别人实在不习惯,试用期跑路了怎么办?
3.各种扩展问题 除了很冷门的库,基本上都有WIN版..就算没WIN版.能部署到测试环境..开发环境connect到测试环境也可以解决啊?(我们的REDIS,SPHINX就是这样干的).
4.上线部署问题 回答里说环境一致简直是扯淡的...这世界上没人能保证2个环境一模一样...环境相似的问题有很多方案解决啊...例如:测试环境在linux下..模拟线上环境即可... 或者在线上的机器部署个预发布环境..上线之前先测试通过,再到预发布看看..冒烟测试一下..再部署能省事很多了.

还是邓同学说的好 不管黑猫 白猫抓到老鼠 就是好猫...
当然了 凡事也不能绝对.增强自己的linux下开发能力确实对自己有帮助...自个分辨吧.各有各的理
装软件装扩展是真方便,fedora、ubuntu都有丰富的资源,装个php、mysql,都只是敲几句命令的功夫,win你还得什么xampp、wamp,装完之后你想加个扩展什么的,那就。。。
你用过win下的集成环境么???win下加个扩展多简单你知道不??? 泻药,
一般用netbeans。
1.完美模拟生产环境。
2.各种包安装起来很是方便,很多独特的软件只有linux版,你想make就make,windows可以么?
3.强迫自己在开发的时间,必须去了解linux这个系统,各种命令,各种环境的搭建,扩展自己的知识面。

如你想做用来工作的话,考虑用类Unix系统吧!
你想娱乐?抱歉,这不是类Unix的特长,就你装个QQ你都得头痛欲裂。
剩下的和@Bruce、 @飞雪连天 说的一样。 在linux 版本管理更方便些... 例如git
一些php框架更喜欢命令行方式... 例如yii
linux操作为以后的构架师做准备.... 例如 以后带技术团队,主要在服务器上开发...
linux更专注于技术.. 例如 QQ很难用...没有QVOD.... 好处就是不会写着写着代码觉得好苦逼要不要打一把dota 更接近生产环境的话,能够免去一些细微的问题。比如我遇到过的一个:项目使用了 spl_autoload 自动加载类文件,而 PHP 中类名不是大小写敏感的,Windows 文件名也不是大小写敏感的,于是一切从正常。到了生产环境变成了文件大小写敏感,于是 require 文件失败。
除此以外,PHP 项目不一定是纯粹 PHP 的,其依赖单独编写的后端也是很常见的事情。Linux 下开发可以免去 Cygwin 之类的模拟器,更加方便也更加严密。 理论上与开发平台无关. 但使用linux开发会让你走的更远 开发上用windows还是比较方便 的。别强迫自已一定要用linux,找麻烦哪。
推荐阅读
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 成功安装Sabayon Linux在thinkpad X60上的经验分享
    本文分享了作者在国庆期间在thinkpad X60上成功安装Sabayon Linux的经验。通过修改CHOST和执行emerge命令,作者顺利完成了安装过程。Sabayon Linux是一个基于Gentoo Linux的发行版,可以将电脑快速转变为一个功能强大的系统。除了作为一个live DVD使用外,Sabayon Linux还可以被安装在硬盘上,方便用户使用。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 本文介绍了在CentOS 6.4系统中更新源地址的方法,包括备份现有源文件、下载163源、修改文件名、更新列表和系统,并提供了相应的命令。 ... [详细]
  • Vagrant虚拟化工具的安装和使用教程
    本文介绍了Vagrant虚拟化工具的安装和使用教程。首先介绍了安装virtualBox和Vagrant的步骤。然后详细说明了Vagrant的安装和使用方法,包括如何检查安装是否成功。最后介绍了下载虚拟机镜像的步骤,以及Vagrant镜像网站的相关信息。 ... [详细]
  • Centos下安装memcached+memcached教程
    本文介绍了在Centos下安装memcached和使用memcached的教程,详细解释了memcached的工作原理,包括缓存数据和对象、减少数据库读取次数、提高网站速度等。同时,还对memcached的快速和高效率进行了解释,与传统的文件型数据库相比,memcached作为一个内存型数据库,具有更高的读取速度。 ... [详细]
  • Linux下安装免费杀毒软件ClamAV及使用方法
    本文介绍了在Linux系统下安装免费杀毒软件ClamAV的方法,并提供了使用该软件更新病毒库和进行病毒扫描的指令参数。同时还提供了官方安装文档和下载地址。 ... [详细]
  • Python项目实战10.2:MySQL读写分离性能优化
    本文介绍了在Python项目实战中进行MySQL读写分离的性能优化,包括主从同步的配置和Django实现,以及在两台centos 7系统上安装和配置MySQL的步骤。同时还介绍了创建从数据库的用户和权限的方法。摘要长度为176字。 ... [详细]
  • 本文介绍了在无法联网的情况下,通过下载rpm包离线安装zip和unzip的方法。详细介绍了如何搜索并下载合适的rpm包,以及如何使用rpm命令进行安装。 ... [详细]
  • Ubuntu 用户安装 Linux Kernel 3.15 RC1
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
author-avatar
momo左
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有