PHP新手指南


Posted in PHP onApril 01, 2021

PHP新手指南

本文为PHP新手所写,老鸟请绕道。

最近有个CSDN的网友咨询了我一些PHP的新手向问题,他说他们老师都是让他们在Apache的网站目录下放PHP代码,然后浏览器运行,觉得这样很麻烦。问可不可以像HTML代码那样所见即所得。

其实是完全可以的,虽然PHP的真实工作环境往往是基于LAMP的,即Linux+Apache+MySQL+PHP,是在这一整套环境上工作的。所以,如果你致力于成为一个商业PHP开发者,学习和熟悉这一整套环境是必须的。

但是,作为一个PHP新手,主要精力放在熟悉PHP语法上的新手,如果之前也没有其它编程语言经验的,的确是可以先把着一些东西抛在一边,应该把所有精力放在熟悉这门语言上。在学好这门语言之后再学其它。

那么我们来看抛开LAMP这套环境,怎么用最简单的方式来运行PHP程序。

以下演示均在windows10下进行。

CMD直接运行

首先我们要确保PHP的根目录要加入到操作系统的环境变量path中,以方便在cmd下直接调用。

如果你是通过XAMPP安装的PHP,可以在其控制面板的config按钮下选择<Browse>PHP打开PHP的所在目录。

如果想了解如何安装XAMPP,可以阅读PHP开发环境(XAMPP+XDebug+VSCode)搭建

PHP新手指南

然后将PHP的根目录加入系统环境变量:

PHP新手指南

编辑用户或者系统环境变量都是可以的,用户就是只针对当前登录用户。

这里推荐一下启动工具utools,修改系统设置非常方便,安装使用请自行百度。

PHP新手指南

选择Path,点编辑。

PHP新手指南

然后选择新建,将刚才的PHP目录加入。

设置好后点击两次确认保存设置,然后重启电脑使得环境变量更改生效。

重启后打开CMD,输入:

php -v

PHP新手指南

如果一切OK的话就能看到php的版本信息了。

现在我们通过一个简单的php程序测试一下:

<?php
echo "Hellow world!";

保存为hellow.php文件,然后在该目录下使用php命令执行:

提供一个小技巧,直接在该目录的资源管理器窗口路径中输入cmd,回车。即可打开cmd,并且工作目录切换到该目录下。

PHP新手指南

php hellow.php

PHP新手指南

程序顺利输出,其实这种方式是大多数编程语言都支持的,直接使用本体运行,不借助任何IDE之类的。而Linux的很多定时脚本之类的也是通过shell来运行php启动相应脚本。

VSCode下运行

先用给VSCode安装PHP调试插件:

PHP新手指南

然后打开php代码,并切换到debug界面,点击创建launch.json:

PHP新手指南

再弹出的环境选项中选择php:

PHP新手指南

然后VSCode会自动给你的PHP项目创建一个PHP debug配置,这里保持默认即可:

PHP新手指南

关闭launch.json后切换左上角的debug模式为launch currently open script,然后点击绿色角标,PHP代码就会执行,输出显示在下凡调试控制台。

注意顺序不要搞反,默认是通过Listen for Xdebug执行监听步进调试,和当前的本地简单调试无关。

PHP新手指南

给PHP新手的其它建议

  • 关于参考书,国外原版书>译文版>国人写的。编程这一块国人出的书良莠不齐,很难挑选。
  • PHP是一门网络开发运用广泛的语言,所以强烈推荐《HTTP权威指南》,互联网开发必读。
  • PHP具有全部的面向对象能力,要想你的代码优雅高效,设计模式类的读物作为进阶读物是个不错的选项,这里推荐《Head First 设计模式》。
  • 关于改善既有代码,也是一个程序员的必修课,但是这必须要有工作经验后才能有更多经验和体会,这里推荐《重构——改善既有代码的设计》一书。
  • 如果你想对语言本身有更深的理解,不推荐继续阅读PHP的进阶读物,可以去阅读《Java编程思想》,因为一门纯面共享对象的强类型语言的经典著作,足以让你触类旁通其它所有面向对象的语言。

好了,以上。

最后祝所有的新手能顺利进入这个并不是看上去那么美好的行业。

PHP 相关文章推荐
PHP 柱状图实现代码
Dec 04 PHP
关于php支持分块与断点续传文件下载功能代码
May 09 PHP
PHP获取中英混合字符串长度的方法
Jun 07 PHP
THINKPHP2.0到3.0有哪些改进之处
Jan 04 PHP
PHP rsa加密解密使用方法
Apr 27 PHP
WordPress主题中添加文章列表页页码导航的PHP代码实例
Dec 22 PHP
thinkPHP中分页用法实例分析
Dec 26 PHP
Ajax PHP JavaScript MySQL实现简易无刷新在线聊天室
Aug 17 PHP
PHP标准类(stdclass)用法示例
Sep 28 PHP
Ubuntu 16.04下安装PHP 7过程详解
Mar 28 PHP
Thinkphp开发--集成极光推送
Sep 15 PHP
bindParam和bindValue的区别以及在Yii2中的使用详解
Mar 12 PHP
PHP命令行与定时任务
Apr 01 #PHP
解决thinkphp6(tp6)在状态码500下不报错,或者显示错误“Malformed UTF-8 characters”的问题
Apr 01 #PHP
如何判断微信付款码和支付宝付款码
Apr 01 #PHP
Laravel中获取IP的真实地理位置
Apr 01 #PHP
Jsonp劫持学习
利用ajax+php实现商品价格计算
php微信小程序解包过程实例详解
Mar 31 #PHP
You might like
动易数据转成dedecms的php程序
2007/04/07 PHP
php实现改变图片直接打开为下载的方法
2015/04/14 PHP
Zend Framework教程之Zend_Registry对象用法分析
2016/03/22 PHP
php判断用户是否关注微信公众号
2016/07/22 PHP
用js+xml自动生成表格的东西
2006/12/21 Javascript
关于javascript function对象那些迷惑分析
2011/10/24 Javascript
Jvascript学习实践案例(开发常用)
2012/06/25 Javascript
Js如何判断客户端是PC还是手持设备简单分析
2012/11/22 Javascript
jQuery实现单击按钮遮罩弹出对话框(仿天猫的删除对话框)
2014/04/10 Javascript
14款经典网页图片和文字特效的jQuery插件-前端开发必备
2015/08/25 Javascript
JQuery Dialog对话框 不能通过Esc关闭的原因分析及解决办法
2017/01/18 Javascript
NodeJs通过async/await处理异步的方法
2017/10/09 NodeJs
angularjs实现时间轴效果的示例代码
2017/11/29 Javascript
React Hooks的深入理解与使用
2018/11/12 Javascript
vue 右键菜单插件 简单、可扩展、样式自定义的右键菜单
2018/11/29 Javascript
详解JS判断页面是在手机端还是在PC端打开的方法
2019/04/26 Javascript
layer弹出层倒计时关闭的实现方法
2019/09/27 Javascript
json.stringify()与json.parse()的区别以及用处
2021/01/25 Javascript
[01:01:51]EG vs VG Supermajor小组赛B组 BO3 第二场 6.2
2018/06/03 DOTA
[53:52]OG vs EG 2018国际邀请赛淘汰赛BO3 第二场 8.23
2018/08/24 DOTA
把MySQL表结构映射为Python中的对象的教程
2015/04/07 Python
Python函数的周期性执行实现方法
2016/08/13 Python
Python Flask-web表单使用详解
2017/11/18 Python
Python 和 JS 有哪些相同之处
2017/11/23 Python
python实现傅里叶级数展开的实现
2018/07/21 Python
Python3之手动创建迭代器的实例代码
2019/05/22 Python
PyQt5 如何让界面和逻辑分离的方法
2020/03/24 Python
如何让IE9以下版本(ie6/7/8)认识html5元素
2013/04/01 HTML / CSS
JD Sports荷兰:英国领先的运动时尚零售商
2020/03/13 全球购物
Piercing Pagoda官网:耳环、戒指、项链、手链等
2020/09/28 全球购物
应届毕业生自荐信例文
2014/02/26 职场文书
学校政风行风评议工作总结
2014/10/21 职场文书
教师业务学习材料
2014/12/16 职场文书
医德医风个人总结
2015/02/28 职场文书
体育委员竞选稿
2015/11/21 职场文书
详解Redis在SpringBoot工程中的综合应用
2021/10/16 Redis