0

0

程序员 - 说一下在win和linux下开发PHP的区别、感受、内心想法。望点评

php中文网

php中文网

发布时间:2016-06-06 20:44:57

|

1009人浏览过

|

来源于php中文网

原创

我以前一直都是在win下面写php代码的,但是很多次看到招聘信息招聘PHP程序员的时候都说到能在linux开发PHP,然后后来我自己也硬着头皮转到linux(centos)下开发PHP。 说一下深刻的体会、感受,希望大家能够评价一下。

1)linux安装开发环境不方便 win下面直接用集成开发包安装非常方便 ampp环境全部都有了。而且可以直接方便的开启扩展,非常方便。 在linux下面必须手动编译,安装apr apr-util pcre apache php libxml2 mysql…… 而且安装好了php,还得配置php.ini my.cnf httpd.conf,而且修改了之后还并不会生效,很奇怪的现象。 php.ini 在/etc/php.ini里面有,但是在/usr/local/php5/lib/php.ini又有一个,而且我开启Apache虚拟目录vhosts,如果把目录放到/home/username/www下面就没有访问权限,但是放到/var/www/下面却又可以访问。

然后我安装drupal,发现又要zlib扩展,我去重新编译PHP。在PHP-5.5.13的ext目录里面有zlib 文件夹,编译的时候--with-zlib,可怎么都没有安装上去。 而且我发现我把所有的PHP的文件包括目录都删除了,重启httpd,居然还是可以打开phpinfo.php,很奇怪。 mysql的配置也不好配置,我在win7下面用wamp,直接修改my.ini就可以搬迁到任意目录,但是在linux里面还有权限方面的,很多。反正在linux下配置lamp环境真的很麻烦,最快也得一个上午,因为编译安装PHP,make test这里有将近1万多项目,make install又非常久。 再加上配置mysql 、Apache(开vhosts)还不一定能够成功,权限问题、目录分配问题。

2)对在win下开发PHP的忧虑 我之所以会一直纠结是不是该去linux开发PHP,主要的几个因素是:第一我有一两次去面试PHP程序员,但是看到对方程序员是在linux下开发PHP的;第二是PHP 5.6.x版本,他们不再发行WIN下面的版本了;第三是我最近在看symfony,但是发现他们是composer安装的,而官网的提示操作都是在linux下面完成的。所以我心里想法就是是不是以后PHP不能在win下面开发了,是不是国外的PHP程序员都是在linux下开发PHP的。

3)在linux下开发网站的缺点、问题 我也仔细想过一些问题,现在这个时代,网站很讲究美观UI体验,做一个网站如果仅仅有PHP程序员真的是不可能完成的,必须和美工设计人员一起配合完成。如果在linux下开发PHP网站,那么美工经常传图片素材过来,那么怎么弄?美工负责的是设计,现在国内的公司做网站美工传递东西图片都是通过QQ的,非常方便,快速。如果转到linux下开发,那会怎么样传递?先从VM的win7中QQ接收再自己从WIN7 的FTP客户端上传到linux的网站目录中,再切换到linux中去使用图片资源?

4)说到最后,我认为的PHP和其他软件程序JAVA C++的本质区别 我做PHP已经有很多年了,一直总是感觉PHP总是被其他软件程序语言,比如JAVA C++所干扰。很武断的认为PHP就应该和C++ JAVA那样,但是我总是一种感觉他们本质区别,C++ JAVA似乎很要求协同,且美工方面参与的比较少或者来说可能没有不存在美工设计人员的参与,因为软件方面对界面没有什么要求,要求的是运行和业务逻辑。但是做网站,大部分都是做文章内容方面,CMS足以满足,然后静态化生成,程序方面的要求是次要的,美工方面的参与非常多,这样的话,根本就不能像C++ JAVA那些语言那样独立出来开发,必须更美工很强烈的配合(因为大部分公司美工不懂HTML CSS JS)。而且做网站php程序员,其实你还是要用到PS、DW切图这些软件,而这些软件linux根本就不支持。所以我一直非常纠结这个问题,一方面实际需要中PHP根本就不像C++ JAVA那些程序那样有什么团队之类的,大部分公司都是最多只有一个PHP程序员。另外一方面很多地方又说PHP必须在linux下开发,可我自己实际几次转到linux下开发PHP觉得真的很麻烦,不方便,不灵活。

写了这些希望能够得到大家的点评、看法、见解。


2015-8-12 补充:

立即学习PHP免费学习笔记(深入)”;

再次回到这个问题,其实现在更倾向于使用 *nix下做开发,而并非 win下做开发。

这个问题已被关闭,原因:

回复内容:

我以前一直都是在win下面写php代码的,但是很多次看到招聘信息招聘PHP程序员的时候都说到能在linux开发PHP,然后后来我自己也硬着头皮转到linux(centos)下开发PHP。 说一下深刻的体会、感受,希望大家能够评价一下。

1)linux安装开发环境不方便 win下面直接用集成开发包安装非常方便 ampp环境全部都有了。而且可以直接方便的开启扩展,非常方便。 在linux下面必须手动编译,安装apr apr-util pcre apache php libxml2 mysql…… 而且安装好了php,还得配置php.ini my.cnf httpd.conf,而且修改了之后还并不会生效,很奇怪的现象。 php.ini 在/etc/php.ini里面有,但是在/usr/local/php5/lib/php.ini又有一个,而且我开启Apache虚拟目录vhosts,如果把目录放到/home/username/www下面就没有访问权限,但是放到/var/www/下面却又可以访问。

然后我安装drupal,发现又要zlib扩展,我去重新编译PHP。在PHP-5.5.13的ext目录里面有zlib 文件夹,编译的时候--with-zlib,可怎么都没有安装上去。 而且我发现我把所有的PHP的文件包括目录都删除了,重启httpd,居然还是可以打开phpinfo.php,很奇怪。 mysql的配置也不好配置,我在win7下面用wamp,直接修改my.ini就可以搬迁到任意目录,但是在linux里面还有权限方面的,很多。反正在linux下配置lamp环境真的很麻烦,最快也得一个上午,因为编译安装PHP,make test这里有将近1万多项目,make install又非常久。 再加上配置mysql 、Apache(开vhosts)还不一定能够成功,权限问题、目录分配问题。

2)对在win下开发PHP的忧虑 我之所以会一直纠结是不是该去linux开发PHP,主要的几个因素是:第一我有一两次去面试PHP程序员,但是看到对方程序员是在linux下开发PHP的;第二是PHP 5.6.x版本,他们不再发行WIN下面的版本了;第三是我最近在看symfony,但是发现他们是composer安装的,而官网的提示操作都是在linux下面完成的。所以我心里想法就是是不是以后PHP不能在win下面开发了,是不是国外的PHP程序员都是在linux下开发PHP的。

3)在linux下开发网站的缺点、问题 我也仔细想过一些问题,现在这个时代,网站很讲究美观UI体验,做一个网站如果仅仅有PHP程序员真的是不可能完成的,必须和美工设计人员一起配合完成。如果在linux下开发PHP网站,那么美工经常传图片素材过来,那么怎么弄?美工负责的是设计,现在国内的公司做网站美工传递东西图片都是通过QQ的,非常方便,快速。如果转到linux下开发,那会怎么样传递?先从VM的win7中QQ接收再自己从WIN7 的FTP客户端上传到linux的网站目录中,再切换到linux中去使用图片资源?

4)说到最后,我认为的PHP和其他软件程序JAVA C++的本质区别 我做PHP已经有很多年了,一直总是感觉PHP总是被其他软件程序语言,比如JAVA C++所干扰。很武断的认为PHP就应该和C++ JAVA那样,但是我总是一种感觉他们本质区别,C++ JAVA似乎很要求协同,且美工方面参与的比较少或者来说可能没有不存在美工设计人员的参与,因为软件方面对界面没有什么要求,要求的是运行和业务逻辑。但是做网站,大部分都是做文章内容方面,CMS足以满足,然后静态化生成,程序方面的要求是次要的,美工方面的参与非常多,这样的话,根本就不能像C++ JAVA那些语言那样独立出来开发,必须更美工很强烈的配合(因为大部分公司美工不懂HTML CSS JS)。而且做网站php程序员,其实你还是要用到PS、DW切图这些软件,而这些软件linux根本就不支持。所以我一直非常纠结这个问题,一方面实际需要中PHP根本就不像C++ JAVA那些程序那样有什么团队之类的,大部分公司都是最多只有一个PHP程序员。另外一方面很多地方又说PHP必须在linux下开发,可我自己实际几次转到linux下开发PHP觉得真的很麻烦,不方便,不灵活。

写了这些希望能够得到大家的点评、看法、见解。


2015-8-12 补充:

立即学习PHP免费学习笔记(深入)”;

再次回到这个问题,其实现在更倾向于使用 *nix下做开发,而并非 win下做开发。

首先要分清楚“开发时用的操作系统”和“开发环境的操作系统”的区别。前者是你运行IDE,编辑器,查邮件,和团队沟通时使用的操作系统,而后者是你开发过程中运行代码用的操作系统,我的观点是后者一定不能是windows,而前者随意。 两者可以是同一个linux,可以是一台windows或mac,另一台里面的linux虚拟机,也可以是两台物理机器都ok,放弃使用windows作为开发环境是很对的,但这不意味着你就必须得用linux桌面。

另外关于编译的吐槽,如果你开发的系统对php的版本、模块并不特别挑剔的话,几乎所有发行版都有编译好的php二进制包。当然,学会自己编译更好,所谓的“Linux基本功”其实不外乎文件/文本操作和源码编译/安装两大块。比起微软的那套东西,linux下可能你上手装第一台机器要半天,但熟练以后装100台机器也就只要半天。windows你上手可能只要一小时,但装100台机器一周都不一定能搞定,还要给微软缴100份授权,呵呵

程序员 - 说一下在win和linux下开发PHP的区别、感受、内心想法。望点评

我的开发环境!
1. 没有QQ可以让我每天集中注意力的时间更长。
2. linux 下操作会明白更多win下从来没有关注过得原理性的东西
3. 工作区快捷键自由切换 利用好了极大提升效率。
4. 更加自由的外观制定。
........

坑:
和UI设计师配合可以用邮件 不过为了更好跟踪任务可以用 teambition 或 tower 图片直接托进去。
linux IE网页兼容测试,这个是个坑,公司给我提供了一台测试机,也可以用虚拟机。
实在需要QQ 只能web QQ简单交流一下。

慢慢习惯一下,真的习惯了效率很高的, 一口气写上千行代码 不费劲。

AI大学堂
AI大学堂

科大讯飞打造的AI学习平台

下载

  • 1) 有种东西叫做XAMPP..另外有一种东西叫做LAMP一键安装包...我觉得你可能需要这个,以及我真没觉得在Linux下配环境有你说的那么麻烦(当然比Win下的套件麻烦是真的,毕竟是套件啊喂喂!)
  • 2) 这条有几个问题:

    • 不是说不支持Windows了,是说不支持Windows XP了。具体请自行搜索。
    • 给两个链接你的话就不攻自破了:Win下如何安装composer 以及 官方Win安装教程。另外composer最关键的不是系统问题而是网络问题好么!!!!
  • 3) 开发人员在必要情况下通过邮件沟通我觉得是一种基本素养。
  • 4) 两个选择:

    1. 出门左拐找GIMP
    2. 出门右拐找Mac

总结来说就是你能在Linux下开发PHP当然是亮点,证明你对Linux有一定的操作能力。但是你在Windows下开发也没人会说你什么好么,我也没见哪家招聘上写着“5年Linux下PHP开发经验”的。

咳咳,看楼上都说什么多,我来个精简版的。
1. linux下也有大名鼎鼎的lnmp一键环境(lnmp.org)
2. 你说的工具也都有windows版本
3. linux有神器GIMP
4. 大公司PHP不管前端

这个跟vim的学习曲线很像,linux讲究高效,虽然不一定方便(只是在少数情况下),当楼主碰到线上一个由于操作系统引发的bug被搞得焦头烂额的时候,就会发现这绝对是值得的

其实我觉得企业写要求在linux下开发,并不一定是要求你工作的时候在linux下进行,而是能有linux服务器的布置和排错能力。

你要是想成文一个合格的PHP程序员,你就必须熟悉 LANMP|LNMP

LAMP|LNMP下的PHP开发,才是你入门PHP的开始

首先,在 Windows || Linux || Mac 下开发都可以,只要你顺手,与你的团队沟通方便。

其次,大部分情况下你的 PHP 程序要在 Linux 环境下跑,所以你如果不是在 Linux 下进行开发,就要具备上线前测试用的 Linux 环境。

第三,如果 PHP 程序员总是要和美工打交道的话,开发模式、协同模式是有待于改进的,至少 M 和 V 没有分开嘛。

最后,感觉你对 Linux 的使用的了解还处在入门阶段,熟悉了以后没你说的那么多麻烦。

只能说你用使用斧头的方法去使用电锯了。当然这种情况下面电锯是比不上斧头来得有效率的。要想使用电锯能体验上电锯的效率,还是得按照电锯的使用方法来使用。

编程来说,特别是开源,linux绝对有优势的。
可以用virtualbox虚拟机来运行linux,不就可以两个一起用么?

我来说点题外话,我大概在4年前,开始使用ubuntu,在2年前,开始使用mac,
非常重要的一点,就是专心

相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
Python 序列化
Python 序列化

本专题整合了python序列化、反序列化相关内容,阅读专题下面的文章了解更多详细内容。

0

2026.02.02

AO3官网入口与中文阅读设置 AO3网页版使用与访问
AO3官网入口与中文阅读设置 AO3网页版使用与访问

本专题围绕 Archive of Our Own(AO3)官网入口展开,系统整理 AO3 最新可用官网地址、网页版访问方式、正确打开链接的方法,并详细讲解 AO3 中文界面设置、阅读语言切换及基础使用流程,帮助用户稳定访问 AO3 官网,高效完成中文阅读与作品浏览。

91

2026.02.02

主流快递单号查询入口 实时物流进度一站式追踪专题
主流快递单号查询入口 实时物流进度一站式追踪专题

本专题聚合极兔快递、京东快递、中通快递、圆通快递、韵达快递等主流物流平台的单号查询与运单追踪内容,重点解决单号查询、手机号查物流、官网入口直达、包裹进度实时追踪等高频问题,帮助用户快速获取最新物流状态,提升查件效率与使用体验。

27

2026.02.02

Golang WebAssembly(WASM)开发入门
Golang WebAssembly(WASM)开发入门

本专题系统讲解 Golang 在 WebAssembly(WASM)开发中的实践方法,涵盖 WASM 基础原理、Go 编译到 WASM 的流程、与 JavaScript 的交互方式、性能与体积优化,以及典型应用场景(如前端计算、跨平台模块)。帮助开发者掌握 Go 在新一代 Web 技术栈中的应用能力。

11

2026.02.02

PHP Swoole 高性能服务开发
PHP Swoole 高性能服务开发

本专题聚焦 PHP Swoole 扩展在高性能服务端开发中的应用,系统讲解协程模型、异步IO、TCP/HTTP/WebSocket服务器、进程与任务管理、常驻内存架构设计。通过实战案例,帮助开发者掌握 使用 PHP 构建高并发、低延迟服务端应用的工程化能力。

5

2026.02.02

Java JNI 与本地代码交互实战
Java JNI 与本地代码交互实战

本专题系统讲解 Java 通过 JNI 调用 C/C++ 本地代码的核心机制,涵盖 JNI 基本原理、数据类型映射、内存管理、异常处理、性能优化策略以及典型应用场景(如高性能计算、底层库封装)。通过实战示例,帮助开发者掌握 Java 与本地代码混合开发的完整流程。

5

2026.02.02

go语言 注释编码
go语言 注释编码

本专题整合了go语言注释、注释规范等等内容,阅读专题下面的文章了解更多详细内容。

62

2026.01.31

go语言 math包
go语言 math包

本专题整合了go语言math包相关内容,阅读专题下面的文章了解更多详细内容。

55

2026.01.31

go语言输入函数
go语言输入函数

本专题整合了go语言输入相关教程内容,阅读专题下面的文章了解更多详细内容。

27

2026.01.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP课程
PHP课程

共137课时 | 10.8万人学习

JavaScript ES5基础线上课程教学
JavaScript ES5基础线上课程教学

共6课时 | 11.2万人学习

PHP新手语法线上课程教学
PHP新手语法线上课程教学

共13课时 | 0.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号