欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

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

程序员文章站 2024-02-07 14:18:22
...
一般在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 PHP