鱼C论坛

 找回密码
 立即注册
查看: 7044|回复: 24

[技术交流] 【php包教不包会系列2】hello world的正确姿势

[复制链接]
发表于 2017-2-14 09:36:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 mumudontcry 于 2017-3-9 00:46 编辑

我们先看一下php的hello world的代码
<?php
echo 'hello world';

你可以在这里执行这段代码
https://c.runoob.com/compile/1

菜鸟工具里的示例代码也许会和我这边的不一样,可能它那边会多一个闭合标签:?>
这里给一个建议:所有的不是内嵌html代码的php文件,都不要加闭合标签

以上就是php的hello world的姿势,over~

众人:。。。这个不是烂大街的东西么?
答:哦,好吧,既然你诚心诚意发问了,那么我就……
众人:说重点!
答:。。。

那么,这段代码是所有初学者都需要学习的一段代码,but,这里有一个问题,难道之后所有给出的代码,你都要在上面那个地方执行么?
在你需要自己建立一个网站的时候呢?

是的,要运行php代码,首先需要有一个php环境!

众人:等等!你该不会跟我们讲如何安装php然后结束这一讲吧?
答:nonono,那和普通教程有什么分别?

在我的bgm里,我不会一上来就教你如何安装一个php环境,因为,也许一些更加小白的新手,在还没有自己成功配置环境之前,就已经死在路上了,更别说什么接下来的学习了,所以,我这里直接给出最简洁的答案:phpstudy

直接去phpstudy官网下载一个(我估计你也是windows吧?),地址:http://www.phpstudy.net/

我不打算在这里教你们怎么去php官网,编译一个php等等操作,phpstudy集成了各种版本的php,正如它的名字一样,它就是用来学习php的
当然,phpstudy在生产环境里表现也很不错,因为自带了很多扩展,以及别人给你做了很多配置优化等,你不再需要为php环境配置烦恼

众人:phpstudy给了你多少钱?
答:额……不要在意细节

如果想要最快得到一个本地的php环境,phpstudy或者其他的集成包会是你最好的选择,新手们也不需要去纠结怎么来的,因为,你的重点是入门啊!

步骤很简单,下载,下一步,下一步,下一步。。。完成,典型的一键

你可以随意切换php的版本

就像这样 微信截图_20170214094909.png

默认的路径应该是D盘下的phpstudy目录,而默认的网站根目录就在下面的www目录,你可以创建一个demo.php,把hello world代码写进去,打开浏览器的地址:http://localhost/demo.php

如图所示

微信截图_20170214095424.png

还有很多选项等着你们自己发现……

注意:修改php的相关配置,如果要生效,请点击重启

好吧,你们认为的广告,就到此吧,我们开始进入更加高级的阶段,对,上面只是前戏

你们也看到了,我用了一个好像很漂亮的编辑器!老司机应该都知道,我用的是sublime(以后遇到这种新名词呢,我不特殊说明,表示你们百度就可以搞定的,我就不说了)

既然这讲是在说php的hello world的正确姿势,那么,一个好用的编辑器是必不可少的!

我这里推荐两个编辑器,sublime和netbeans,这两个软件百度去他们官网下载最新的就ok了!

【sublime】

使用sublime的原因是,可以通过sublime的编译系统功能,直接执行php代码!

这样再也不需要去别人网站上调试一些简单的php了

步骤如下,很简单,就跟把大象 7094032_LjWJ.gif 放进冰箱一样简单

1、找到php的路径,如果你没有修改phpstudy的默认安装路径,它会在D:\phpStudy\php下,你可以看到下面有好多php的版本,看我上面截图,我用的是5.4的,所以,获取到的最终地址是:D:\phpStudy\php\php-5.4.45-nts\php.exe
2、打开sublime,选择“首选项”,快捷键对应N的,如果你的sublime是英文,可以自己去研究汉化版本,或者下载别人的汉化版本,我不建议这么做,这里你只要记住是快捷键对应N的就是了,截图上有,可以看到
3、选择第一个(快捷键B),浏览插件目录,此时会打开sublime的插件目录
4、创建一个文件夹,命名为php,在里面创建一个文件,PHP.sublime-build
5、内容写上:
{
    "cmd": ["php", "$file"],
    "file_regex": "php$",
    "selector": "source.php"
}

其中,把"cmd": ["php", "$file"],的php换成刚才我们复制的路径,最终结果是:
{
    "cmd": ["D:\phpStudy\php\php-5.4.45-nts\php.exe", "$file"],
    "file_regex": "php$",
    "selector": "source.php"
}

6、保存,然后打开刚才的demo.php,直接使用组合键 ctrl + b (不要按+号啊,就是单纯的ctrl键和b键),然后……
微信截图_20170214100938.png
看到了没,你的php直接执行了!是不是很神奇

如果想要不一样的php版本执行,把上面的路径换成对应php版本路径就ok了!

【netbeans】

现在我们来说一说一个神器

sublime解决的问题是,处理一些小的php脚本,可以给我们平时代码调试用

什么?你说python直接有ide可以调试?php都没有,php真垃圾!

等等,php也可以直接运行啊,在刚才那个路径的目录下面打开命令行窗口,你也可以使用php的命令行模式去调试一些简单代码啊,问题是……这就变得有点复杂了,我这里只是给一个最简单的答案~~

回到netbeans的话题,netbeans解决的问题是,如果在一个比较大的项目里,你想要跟踪变量的值,你如果要一个一个echo(别的语言里可能是print),那是很痛苦的,你可能要重复执行,然后不断打印,这种事情你们肯定干过而且特别烦

行!netbeans可以帮你解决这个困扰,通过netbeans,你可以直接断点调试,而且完全不需要配置!!(有人会说什么phpstorm啊等等编辑器,如果你熟悉,也可以,我这里只是给你一个我认为最快的方法!)

那么现在我已经假装你安装了netbeans了,也许你打开之后界面和我的不一样,这里提供一个我的netbeans配置:https://github.com/forsona/netbeans-settings

下载之后,工具->选项->导入,选中刚才的压缩包即可

netbeans,创建新项目,基于现有源代码的应用程序,选中刚才demo.php的文件夹
微信截图_20170214102606.png
我的目录可能和你的不一样,你只要保证项目Url和索引文件就是指向了demo.php就可以了,当然,项目Url的另一个含义是,你的项目的根目录

点击调试按钮

微信截图_20170214102829.png

微信截图_20170214102907.png

此时,浏览器会被打开,然后你的脚本就卡在这里了,看到了绿色的按钮没有?由于我们把断点打在了$a变量上,所以,这时候脚本在这里停住了
鼠标移动到上面就可以看到$a的值就是hello world

你也可以:窗口->调试->变量,查看所有的变量的值,只不过这里我只有一个$a变量

小明:报告老师!我的浏览器没有被打开,而且!我的没有出现绿色!而且!我的没有出现那些调试按钮

木木:额,不好意思,可能忘了说一件事

注意:如果出现上面的情况,可能是你并没有打开xdebug扩展,喵喵喵?还有安装扩展?

放心,phpstudy已经集成了这些常见扩展,只需要:其他选项菜单->php扩展及设置->php扩展->Xdebug勾选上就ok,如果没有见到这个扩展,请把php版本调回到5.4nts,这个版本在我使用那么多phpstudy集成的版本来看应该是最稳定的

小明:报告老师,还是没有用!

木木:记得重启php啊!还有,刚才netbeans调试的过程是作废了,因此,你需要关掉调试,重新再来,当然,如果出现……没有卡住的情况,也许是netbeans内存泄漏了,喵喵喵?(怪java去吧)重启netbeans,这种情况会经常出现在你调试很久不去管它的情况下

到这里,一个特别的hello world姿势已经解锁了

通过这一讲,你应该学习到:

1、使用phpstudy的php集成环境
2、配置sublime的代码调试
3、使用netbeans断点调试代码


所谓的hello world,其实就是一门语言的入门,到这里为止,你已经掌握了精通php的心法:代码调试,有了这个心法,所有的php程序对你来说将是小菜一碟!

下一讲

关于调试的小技巧

#################### 华丽的 PHP 版分割线 ####################


如果喜欢木木的讲解,就点击下方的订阅(读作:打赏),给木木点个赞吧,欢迎大家提出建议或者指正

一块钱买不了皮肤,买不了香烟,却可以跟着木木一起打怪升级,并给木木巨大的支持,有了大家的力量,木木就可以制造元气弹,打败……嗯,买一个好一点的女朋友啦

评分

参与人数 1荣誉 +20 鱼币 +20 收起 理由
hldh214 + 20 + 20 支持楼主!

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2017-2-14 10:54:53 | 显示全部楼层
大家快来解锁新姿势!!!!!!!!!!!1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-2-14 11:09:46 | 显示全部楼层
不知道是不是有点多,需不需要我拆开来讲一下?大家怎么看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-2-14 11:33:55 | 显示全部楼层
好给力的帖子
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-2-14 11:48:40 | 显示全部楼层

你居然看完了-。-挽尊~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-2-14 13:06:41 | 显示全部楼层
看的费眼睛
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-2-14 14:13:08 | 显示全部楼层
建议排版优化下。

顺便打下广告

【Java 教程(原创)】:http://bbs.fishc.com/thread-80133-1-1.html

【Java 正则表达式】:http://bbs.fishc.com/thread-82367-1-1.html
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-2-14 15:06:16 | 显示全部楼层
零度非安全 发表于 2017-2-14 14:13
建议排版优化下。

顺便打下广告


干得漂亮~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-3-15 20:51:19 | 显示全部楼层
大神,一直调试不成功
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-3-16 09:09:52 | 显示全部楼层
出泥的鱼 发表于 2017-3-15 20:51
大神,一直调试不成功

哪里不成功。。。。你这样我没法回答
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-3-26 16:14:39 | 显示全部楼层
按照你的步骤操作。。还是不行

CTRL+B

CTRL+B
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-3-28 11:39:28 | 显示全部楼层
出泥的鱼 发表于 2017-3-26 16:14
按照你的步骤操作。。还是不行

你要配置php,上面说得那些都要配置的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-5 17:07:32 | 显示全部楼层
本帖最后由 kunaiai 于 2017-4-5 17:11 编辑

{
    "cmd": ["D:\phpStudy\php\php-5.4.45-nts\php.exe", "$file"],
    "file_regex": "php$",
    "selector": "source.php"
}用这个也是提示no build system
改成
{
        "cmd": ["D:\\phpStudy\\php\\php-5.4.45-nts\\php.exe", "$file"],
        "file_regex": "php$",
        "selector": "source.php"
}要双\ 就可以了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-6 10:44:23 | 显示全部楼层
进入 https://github.com/forsona/netbeans-settings 下载zip后,
NetBeans 工具->选项->导入,选中刚才的压缩包
选择要导入的选项里是空的
是那里有问题吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-6 19:42:23 | 显示全部楼层
kunaiai 发表于 2017-4-6 10:44
进入 https://github.com/forsona/netbeans-settings 下载zip后,
NetBeans 工具->选项->导入,选中刚才的 ...

额……居然没有想到这种事情,里面是不是还有一个文件夹,你需要解压出来,把里面的文件夹里的一堆文件打包成一个压缩包
我上传到 github 上之后,你们下载下来的应该都会被 github 加一层文件夹,所以就不对了。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-7 09:13:17 | 显示全部楼层
mumudontcry 发表于 2017-4-6 19:42
额……居然没有想到这种事情,里面是不是还有一个文件夹,你需要解压出来,把里面的文件夹里的一堆文件打 ...

ok  可以了 3q
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-7 09:17:55 | 显示全部楼层
还有个问题为什么选择NetBeans   而不用eclipse呢  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-7 09:26:04 From FishC Mobile | 显示全部楼层
大多数编程软件都是适合linux环境,在windows下不好配置
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-7 14:45:27 | 显示全部楼层
alltolove 发表于 2017-4-7 09:26
大多数编程软件都是适合linux环境,在windows下不好配置

主要还是学语言本身,配置……讲道理,马云爸爸的服务器什么都支持好吧,只要你给钱
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-11 20:46:54 | 显示全部楼层
本帖最后由 CarpLyy 于 2017-4-18 22:27 编辑

请问为什么这么建议?
所有的不是内嵌html代码的php文件,都不要加闭合标签。
自己找到答案了:
PHP 结束标签 ?> 对于 PHP 解析器来说是可选的,但是只要使用了,结束标签之后的空格 有可能会导致不想要的输出,这个空格可能是由开发者或者用户又或者 FTP 应用程序引入的, 甚至可能导致出现 PHP 错误,如果配置了不显示 PHP 错误,就会出现空白页面。基于这个原因, 所有的 PHP 文件将不使用结束标签,而是以一个空行代替。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-21 22:02

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表