PHP核心概念速览
<?php
和 ?>
标记PHP代码块的起始与结束,服务器解析此区域的代码并将其转换为HTML。初探PHP:编写您的第一个PHP脚本
搭建好虚拟服务器后,让我们开始您的第一个PHP脚本之旅。PHP作为服务器端语言,可能与您熟悉的客户端语言(如HTML、CSS、JavaScript)有所不同。
服务器端语言类似于JavaScript,允许您将小程序(脚本)嵌入网页的HTML代码中。执行这些程序后,您可以比仅使用HTML获得对浏览器窗口中显示内容的更大控制权。JavaScript与PHP的关键区别在于执行这些嵌入式程序的网页加载阶段。
客户端语言(如JavaScript)在从Web服务器下载网页(包括嵌入式程序)后由Web浏览器读取和执行。相反,服务器端语言(如PHP)由Web 服务器 在将网页发送到浏览器之前运行。客户端语言让您控制页面在浏览器显示后的行为方式,而服务器端语言则允许您在页面发送到浏览器之前动态生成自定义页面。
Web服务器执行嵌入在网页中的PHP代码后,结果将替换页面中的PHP代码。浏览器在接收页面时看到的只是标准HTML代码,因此被称为“服务器端语言”。让我们来看一个简单的PHP示例,该示例生成一个1到10之间的随机数,然后将其显示在屏幕上:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>随机数</title> </head> <body> <p>生成1到10之间的随机数:</p> <?php echo rand(1, 10); ?> </body> </html>
大部分代码是纯HTML。只有<?php
和 ?>
之间的行是PHP代码。<?php
标记嵌入式PHP脚本的开始,?>
标记其结束。Web服务器被要求解释这两个分隔符之间的所有内容,并在将其发送到请求浏览器的网页之前将其转换为常规HTML代码。如果您在浏览器中右键单击并选择“查看源代码”(文本可能因您使用的浏览器而异),您可以看到浏览器显示以下内容:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>随机数</title> </head> <body> <p>生成1到10之间的随机数:</p> <?php echo rand(1, 10); ?> </body> </html>
请注意,所有PHP代码的痕迹都消失了。取而代之的是脚本的输出,它看起来就像标准HTML。此示例演示了服务器端脚本的几个优点……
基本语法和语句
如果您了解JavaScript、C、C 、C#、Objective-C、Java、Perl或任何其他C派生语言,那么PHP语法将非常熟悉。但如果您不熟悉这些语言,或者您是编程新手,也无需担心。
PHP脚本由一系列命令或语句组成。每个语句都是一条指令,Web服务器必须在继续执行下一条指令之前遵循该指令。与上述语言中的语句一样,PHP语句始终以分号(;)结尾。
这是一个典型的PHP语句:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>随机数</title> </head> <body> <p>生成1到10之间的随机数:</p> 7 </body> </html>
这是一个echo语句,用于生成内容(通常是HTML代码)以发送到浏览器。echo语句只是获取给定的文本并将其插入到包含它的PHP脚本位置的页面HTML代码中。
在这种情况下,我们提供了一个要输出的文本字符串:这是一个测试!。请注意,文本字符串包含HTML标记(<code><strong>
和 <code></strong>
),这是完全可以接受的。
因此,如果我们将此语句放入完整的网页中,则生成的代码如下:
echo '这是一个<strong>测试</strong>!';
如果您将此文件放在Web服务器上,然后使用Web浏览器请求它,您的浏览器将接收此HTML代码:
测试页面 <?php echo '这是一个<strong>测试</strong>!'; ?>
我们之前看到的random.php示例包含一个稍微复杂的echo语句:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>随机数</title> </head> <body> <p>生成1到10之间的随机数:</p> <?php echo rand(1, 10); ?> </body> </html>
您会注意到,在第一个示例中,PHP被赋予一些直接打印的文本,在第二个示例中,PHP被赋予一条要遵循的指令。PHP尝试读取引号之外存在的任何内容作为它必须遵循的指令。引号内的任何内容都被视为字符串,这意味着PHP根本不会处理它,而只是将其传递给您调用的命令。因此,以下代码将字符串“这是一个测试!”直接传递给echo命令:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>随机数</title> </head> <body> <p>生成1到10之间的随机数:</p> 7 </body> </html>
字符串使用起始引号和结束引号来表示。PHP将看到第一个'
作为字符串的开始,并找到下一个'
并将其用作字符串的结尾。
相反,以下代码将首先运行内置函数rand以生成随机数,然后将结果传递给echo命令:
echo '这是一个<strong>测试</strong>!';
您可以将内置函数视为PHP无需您详细说明即可执行的任务。PHP有许多内置函数,可让您执行从发送电子邮件到使用各种类型的数据库中存储的信息的所有操作。
PHP不会尝试理解字符串。它们可以包含任何字符,以任何顺序排列。但是代码——本质上是一系列指令——必须遵循严格的结构才能让计算机理解它。
当您在PHP中调用函数——即要求它执行其工作时——据说您正在调用该函数。大多数函数在被调用时会返回值;然后PHP的行为就像您实际上只是在代码中键入了该返回值一样。在echo 'rand(1, 10)';
示例中,我们的echo语句包含对rand函数的调用,该函数将随机数作为文本字符串返回。然后,echo语句输出函数调用返回的值。
PHP中的每个函数都可以有一个或多个参数,这些参数允许您使函数以略微不同的方式运行。rand函数采用两个参数:最小随机数和最大随机数。通过更改传递给函数的值,您可以更改其工作方式。例如,如果您想要一个1到50之间的随机数,您可以使用以下代码:
测试页面 <?php echo '这是一个<strong>测试</strong>!'; ?>
您可能想知道为什么我们需要用括号((1, 50))括起参数。括号有两个作用。首先,它们表示rand是一个您想要调用的函数。其次,它们标记参数列表的开始和结束——您希望提供的PHP语句——以便告诉函数您希望它做什么。对于rand函数,您需要提供最小值和最大值。这些值用逗号分隔。
稍后,我们将查看采用不同类型参数的函数。我们还将考虑根本不采用任何参数的函数。即使它们之间没有任何内容,这些函数仍然需要括号。
(以下为FAQ部分,由于篇幅限制,我将只保留问题和简短的回答概要。完整的FAQ回答请参考原文。)
PHP代码常见问题解答 (FAQ)
PHP分隔符的意义是什么? <?php
和 ?>
用于标记PHP代码块的开始和结束,服务器据此解析PHP代码。
如何编写我的第一个PHP程序? 创建.php
文件,在<?php ?>
内编写PHP代码,例如echo "Hello, World!";
。
PHP在Web开发中的作用是什么? PHP用于创建动态交互式网页,处理数据库、用户会话、表单等。
PHP如何与HTML交互? PHP代码嵌入HTML的<?php ?>
中,服务器处理后将结果输出为HTML。
PHP代码初学者常犯的错误有哪些? 忘记关闭字符串或括号,分号使用不当,函数语法错误等。
如何调试PHP代码? 使用echo
或print
输出变量值,或使用Xdebug等调试工具。
如何保护PHP代码安全? 验证和清理用户输入,使用安全哈希算法存储密码,更新PHP版本,使用HTTPS连接等。
PHP可以与其他编程语言一起使用吗? 可以,例如与HTML、CSS、JavaScript和SQL数据库。
如何提高PHP代码的性能? 使用高效算法和数据结构,最小化数据库查询,使用缓存技术等。
有哪些学习PHP的资源? PHP官方网站(php.net),在线课程,书籍和教程等。
以上是您的第一个PHP代码的详细内容。更多信息请关注PHP中文网其他相关文章!