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

本文涉及的产品
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS AI 助手,专业版
简介:

本节书摘来自异步社区出版社《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的。只要你遵从本章的安装说明,应该没有问梯。

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
6月前
|
关系型数据库 MySQL PHP
PHP和Mysql前后端交互效果实现
本文介绍了使用PHP连接MySQL数据库的基本函数及其实现案例。内容涵盖数据库连接、选择数据库、执行查询、获取结果等常用操作,并通过用户登录和修改密码的功能实例,展示了PHP与MySQL的交互过程及代码实现。
406 0
PHP和Mysql前后端交互效果实现
|
12月前
|
关系型数据库 MySQL Shell
MySQL 备份 Shell 脚本:支持远程同步与阿里云 OSS 备份
一款自动化 MySQL 备份 Shell 脚本,支持本地存储、远程服务器同步(SSH+rsync)、阿里云 OSS 备份,并自动清理过期备份。适用于数据库管理员和开发者,帮助确保数据安全。
|
10月前
|
关系型数据库 MySQL Linux
实现MySQL数据库的定时自动备份脚本。
拿走,不谢,这个脚本配方(指引)保证你的数据库数据像蛋糕店一样地天天更新,还能确保老旧的蛋糕(数据)不会堆积满仓库。这下可好,数据安全有保障,数据库管理员也能轻松一点,偶尔闲下来的时候,煮杯咖啡,看个剧岂不美哉?别忘了偶尔检查一下你的自动备份是否正常工作,以防万一蛋糕机器出了点小差错。
473 20
|
11月前
|
关系型数据库 MySQL Linux
查看Linux、Apache、MySQL、PHP版本的技巧
以上就是查看Linux、Apache、MySQL、PHP版本信息的方法。希望这些信息能帮助你更好地理解和使用你的LAMP技术栈。
512 17
|
12月前
|
关系型数据库 MySQL PHP
源码编译安装LAMP(HTTP服务,MYSQL ,PHP,以及bbs论坛)
通过以上步骤,你可以成功地在一台Linux服务器上从源码编译并安装LAMP环境,并配置一个BBS论坛(Discuz!)。这些步骤涵盖了从安装依赖、下载源代码、配置编译到安装完成的所有细节。每个命令的解释确保了过程的透明度,使即使是非专业人士也能够理解整个流程。
347 18
|
关系型数据库 MySQL 网络安全
如何排查和解决PHP连接数据库MYSQL失败写锁的问题
通过本文的介绍,您可以系统地了解如何排查和解决PHP连接MySQL数据库失败及写锁问题。通过检查配置、确保服务启动、调整防火墙设置和用户权限,以及识别和解决长时间运行的事务和死锁问题,可以有效地保障应用的稳定运行。
458 25
|
SQL 关系型数据库 MySQL
PHP与MySQL的高效交互:从基础到实践####
本文深入探讨了PHP与MySQL数据库之间的高效交互技术,涵盖了从基础连接到高级查询优化的全过程。不同于传统的摘要概述,这里我们直接以一段精简代码示例作为引子,展示如何在PHP中实现与MySQL的快速连接与简单查询,随后文章将围绕这一核心,逐步展开详细讲解,旨在为读者提供一个从入门到精通的实战指南。 ```php <?php // 数据库配置信息 $servername = "localhost"; $username = "root"; $password = "password"; $dbname = "test_db"; // 创建连接 $conn = new mysqli($se
374 31
|
5月前
|
算法 Java Go
【GoGin】(1)上手Go Gin 基于Go语言开发的Web框架,本文介绍了各种路由的配置信息;包含各场景下请求参数的基本传入接收
gin 框架中采用的路优酷是基于httprouter做的是一个高性能的 HTTP 请求路由器,适用于 Go 语言。它的设计目标是提供高效的路由匹配和低内存占用,特别适合需要高性能和简单路由的应用场景。
481 4
|
9月前
|
缓存 JavaScript 前端开发
鸿蒙5开发宝藏案例分享---Web开发优化案例分享
本文深入解读鸿蒙官方文档中的 `ArkWeb` 性能优化技巧,从预启动进程到预渲染,涵盖预下载、预连接、预取POST等八大优化策略。通过代码示例详解如何提升Web页面加载速度,助你打造流畅的HarmonyOS应用体验。内容实用,按需选用,让H5页面快到飞起!
|
9月前
|
JavaScript 前端开发 API
鸿蒙5开发宝藏案例分享---Web加载时延优化解析
本文深入解析了鸿蒙开发中Web加载完成时延的优化技巧,结合官方案例与实际代码,助你提升性能。核心内容包括:使用DevEco Profiler和DevTools定位瓶颈、四大优化方向(资源合并、接口预取、图片懒加载、任务拆解)及高频手段总结。同时提供性能优化黄金准则,如首屏资源控制在300KB内、关键接口响应≤200ms等,帮助开发者实现丝般流畅体验。

推荐镜像

更多