《PHP和MySQL Web开发从新手到高手(第5版)》一一1.6 第一个PHP脚本

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

本节书摘来自异步社区出版社《PHP和MySQL Web开发从新手到高手(第5版)》一书中的第1章,第1.6节,作者: 【澳】Kevin Yank,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.6 第一个PHP脚本

PHP和MySQL Web开发从新手到高手(第5版)
如果我们在帮助你安装好了所有的软件之后就暂停下来,直到第3章才让你看到PHP脚本是什么样子的话,似乎很不公平。所以,这里先来满足下你的胃口吧。

打开你喜欢的文本或HTML编辑器,并且创建一个名为today.php的文件。在文件中输入如下内容:

chapter1/today.php
<!DOCTYPE html>
<html lang="en">
 <head>
  <meta charset="utf-8">
  <title>Today&rsquo;s Date</title>
 </head>
 <body>
  <p>Today&rsquo;s date (according to this web server) is
   <?php

   echo date('l, F jS Y.');

   ?>
  </p>
 </body>
</htm这是一个字母而不是数字

这段代码中最重要的一行是:

echo date('l, F jS Y.');

遗憾的是,这是阅读本书的大多数人会敲错的一行。看到前面的那个字符了吗?那不是数字1(1),而是小写的L(l)。

在Windows中使用Notepad编辑PHP脚本

要在Notepad中将一个文件保存为.php文件,你或者选择All Files作为文件类型,或者在Save As对话框中用引号将文件名括起来。否则,Notepad肯定会毫不理睬地将文件保存为today.php.txt,这将无法工作。

在Mac OS X中使用TextEdit编辑PHP脚本

注意,当使用TextEdit编辑.php文件的时候,它会将文件存储为富文本格式(Rich Text Format),并默认地带有一个不可见的.rtf扩展文件名。要保存一个新的.php文件,必须首先记住,从TextEdit的菜单中选择Format> Make Plain Text (⇧+图标-1.jpg+T),从而将该文件转换为纯文本。

TextEdit还有一个糟糕的习惯,打开已有的.php文件的时候,它会错误地把文件当作是HTML文档,并且试图将其显示为格式化的文本。为了避免这一点,必须在Open对话框中选中Ignore rich text commands复选框。

尝试免费的IDE

从前面的警告中,你可以看出来:当前的操作系统所提供的文本编辑器,多少有些不适合PHP脚本的编写。然而,有几款不错的文本编辑器和集成开发环境(Integrated Development Environments,IDE)支持编辑PHP脚本,你可以随意地下载它们。

以下是能够在Windows、Mac OS X和Linux上工作的几种:

NetBeans http://www.netbeans.org/features/php/

Aptana http://www.aptana.com/php

Komodo Edit http://www.activestate.com/komodo_edit/
如果你不想自己录入所有的代码,可以从下载的代码文件夹中找到这个文件(以及本书中所有其他的代码)。参见前言中关于如何下载代码文件的详细介绍。

保存该文件,并且将其移动到本地Web服务器的Web根目录下。

服务器的Web根目录在哪里

如果你使用一个手动安装的Apache服务器的话,Web根目录是Apache安装目录下的htdocs目录(在Windows上是C:ProgramFilesApache Software Foundation Apache2.2 htdocs,在Linux上是/usr/local/apache2/htdocs)。

对于内建到XAMPP中的Apache服务器,Web根目录是XAMPP安装目录下的htdocs目录。你可以直接从Start菜单中选择以找到它:All Programs > Apache Friends > XAMPP > XAMPPhtdocs文件夹。

如果你使用Mac OS X中内建的Apache服务器,Web根目录是/Library/WebServer/ Document。通过在System Preferences的Sharing面板中的Web Sharing下的Open Computer Website Folder…按钮,可以很容易地找到它。

内建到MAMP中的Apache服务器,根目录位于MAMP目录中的htdocs目录下(/Applications/MAMP/htdocs)。如果你想要使用另一个目录作为Web根目录,可以在MAMP应用程序中的Preferences的Apache标签页上修改它。这一功能使得我们可以通过将MAMP指向不同的目录,从而很容易地在多个Web开发项目之间进行切换。
打开Web浏览器,并且在浏览器的地址栏输入http://localhost/today.php(或者http://localhost: port/today.php,如果Apache配置为在默认端口80以外的一个端口上运行的话),以查看刚才所创建的文件。1

TB3.tif 必须输入URL

可能你已经习惯了通过双击Web页面来预览它们,或者使用浏览器的File > Open…功能来预览。这些方法会通知浏览器直接从计算机的硬盘上加载该文件。因此,它们对PHP文件是无效的。

正如前面所提到的,PHP脚本要求你的Web浏览器读取并执行它们所包含的PHP代码,然后再将所生成的HTML代码发送给浏览器。只有通过输入URL (http://localhost/today.php),浏览器才会从Web服务器请求文件,以促成这一过程。
图1.11展示了第一个PHP脚本所生成的Web页面的样子。
image

还不错吧?如果在浏览器中使用View Source功能,你将会看到一个常规的HTML文件,其中包含有日期。Web服务器将会解释PHP代码(上面的<?php和?>之间的所有内容),并且将其转换为常规的文本,然后再发送给浏览器。PHP(以及其他服务器端脚本编程语言)之美,就在于Web浏览器可以在浑然不知的状态下,而由Web服务器来完成所有的工作。

如果你担心这段代码对自己来说意义不大,那么,等到阅读完第3章,你就会很快了解它是如何工作的了。

如果漏掉了日期,或者浏览器提示你下载PHP文件而没有显示它,那么,你的Web服务器对PHP的支持出了问题。如果可以的话,使用浏览器中的View Source来查看该页面的代码。你可能会看到页面中的PHP代码还在那儿。由于浏览器无法理解PHP,它只是将<?php… ?>当作是一个长长的、无效的HTML标签,从而会忽略它。

仔细检查以确保你已经向Web服务器而不是硬盘请求了该文件(也就是说,浏览器地址栏显示的是一个以http://localhost/ 开头的URL),并且确保你的Web服务器是支持PHP的。只要你遵从本章的安装说明,应该没有问梯。

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
22天前
|
缓存 NoSQL 关系型数据库
在Python Web开发过程中:数据库与缓存,MySQL和NoSQL数据库的主要差异是什么?
MySQL是关系型DB,依赖预定义的表格结构,适合结构化数据和复杂查询,但扩展性有限。NoSQL提供灵活的非结构化数据存储(如JSON),无统一查询语言,但能横向扩展,适用于大规模、高并发场景。选择取决于应用需求和扩展策略。
112 1
|
1月前
|
JavaScript 前端开发 测试技术
使用Selenium执行JavaScript脚本:探索Web自动化的新领域
本文介绍了如何在Selenium中使用JavaScript解决自动化测试中的复杂问题。Selenium的`execute_script`函数用于同步执行JS,例如滑动页面、操作时间控件等。在滑动操作示例中,通过JS将页面滚动到底部,点击下一页并获取页面信息。对于只读时间控件,利用JS去除readonly属性并设置新日期。使用JS扩展了Selenium的功能,提高了测试效率和精准度,适用于各种自动化测试场景。
41 1
|
3月前
|
关系型数据库 MySQL PHP
|
1天前
|
安全 编译器 PHP
PHP 8.1版本发布:引领Web开发新潮流
PHP编程语言一直是Web开发的主力军,而最新发布的PHP 8.1版本则为开发者们带来了更多创新和便利。本文将介绍PHP 8.1版本的主要特性,包括更快的性能、新的语言功能和增强的安全性,以及如何利用这些功能来提升Web应用程序的质量和效率。
|
1天前
|
Java 关系型数据库 MySQL
一套java+ spring boot与vue+ mysql技术开发的UWB高精度工厂人员定位全套系统源码有应用案例
UWB (ULTRA WIDE BAND, UWB) 技术是一种无线载波通讯技术,它不采用正弦载波,而是利用纳秒级的非正弦波窄脉冲传输数据,因此其所占的频谱范围很宽。一套UWB精确定位系统,最高定位精度可达10cm,具有高精度,高动态,高容量,低功耗的应用。
一套java+ spring boot与vue+ mysql技术开发的UWB高精度工厂人员定位全套系统源码有应用案例
|
4天前
|
PHP
web简易开发——通过php与HTML+css+mysql实现用户的登录,注册
web简易开发——通过php与HTML+css+mysql实现用户的登录,注册
|
1月前
|
监控 前端开发 安全
PHP脚本:实现实时监控电脑屏幕并生成网页截图
在当今数字化时代,实时监控和数据收集变得越来越重要。有时候,我们需要监视某些活动,例如员工的工作情况、儿童的网络活动等等。在这篇文章中,我们将探讨如何使用PHP脚本实现实时监控电脑屏幕,并将监控到的数据自动提交到网站。
101 2
|
1月前
|
关系型数据库 MySQL
一键下载MySQL安装包-batch脚本
一键下载MySQL安装包-batch脚本
29 2
|
1月前
|
Java 关系型数据库 MySQL
【项目】手把手带你用 SpringBoot、Uniapp、MySql 开发一个简单的活动报名项目
【项目】手把手带你用 SpringBoot、Uniapp、MySql 开发一个简单的活动报名项目
126 1
|
2月前
|
SQL 开发框架 .NET
ASP.NET Web——GridView完整增删改查示例(全篇幅包含sql脚本)大二结业考试必备技能
ASP.NET Web——GridView完整增删改查示例(全篇幅包含sql脚本)大二结业考试必备技能
32 0