首页 后端开发 php教程 您的第一个PHP代码

您的第一个PHP代码

Feb 09, 2025 pm 12:49 PM

Your First PHP Code

PHP核心概念速览

  • 服务器端语言: PHP代码在服务器端执行,而非浏览器端,这意味着浏览器接收到的仅是标准HTML,避免了浏览器兼容性问题,并减轻客户端负载。
  • 动态网页生成: PHP嵌入HTML,赋予网页更强大的动态交互能力,超越了纯HTML的静态呈现。
  • 语句与函数: PHP脚本由一系列以分号结尾的语句构成,语句中可调用函数并传入参数以实现多样化功能。
  • 分隔符: <?php?> 标记PHP代码块的起始与结束,服务器解析此区域的代码并将其转换为HTML。
  • 多语言协同: PHP可与HTML、CSS、JavaScript以及SQL数据库等技术无缝集成,是全能型Web开发工具。

初探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。此示例演示了服务器端脚本的几个优点……

  • 无浏览器兼容性问题。 PHP脚本仅由Web服务器解释,因此无需担心您使用的语言功能是否受访问者的浏览器支持。
  • 访问服务器端资源。 在上面的示例中,我们将Web服务器生成的随机数放入网页中。如果我们使用JavaScript插入数字,则数字将在浏览器中生成,并且有人可能会修改代码以插入特定数字。当然,服务器端资源利用的更令人印象深刻的示例包括插入从MySQL数据库中提取的内容。
  • 减少客户端负载。 JavaScript可能会显着延迟网页的显示(尤其是在移动设备上!),因为浏览器必须在显示网页之前运行脚本。使用服务器端代码,此负担将转移到Web服务器,您可以根据应用程序的要求(以及您的钱包承受能力)使其变得强大。
  • 选择。 当编写在浏览器中运行的代码时,浏览器必须了解如何运行给定的代码。所有现代浏览器都理解HTML、CSS和JavaScript。要编写在浏览器中运行的某些代码,您必须使用这些语言之一。通过运行在服务器上生成HTML的代码,您可以选择多种语言——其中一种是PHP。

基本语法和语句

如果您了解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代码? 使用echoprint输出变量值,或使用Xdebug等调试工具。

  • 如何保护PHP代码安全? 验证和清理用户输入,使用安全哈希算法存储密码,更新PHP版本,使用HTTPS连接等。

  • PHP可以与其他编程语言一起使用吗? 可以,例如与HTML、CSS、JavaScript和SQL数据库。

  • 如何提高PHP代码的性能? 使用高效算法和数据结构,最小化数据库查询,使用缓存技术等。

  • 有哪些学习PHP的资源? PHP官方网站(php.net),在线课程,书籍和教程等。

以上是您的第一个PHP代码的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

在PHP API中说明JSON Web令牌(JWT)及其用例。 在PHP API中说明JSON Web令牌(JWT)及其用例。 Apr 05, 2025 am 12:04 AM

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

会话如何劫持工作,如何在PHP中减轻它? 会话如何劫持工作,如何在PHP中减轻它? Apr 06, 2025 am 12:02 AM

会话劫持可以通过以下步骤实现:1.获取会话ID,2.使用会话ID,3.保持会话活跃。在PHP中防范会话劫持的方法包括:1.使用session_regenerate_id()函数重新生成会话ID,2.通过数据库存储会话数据,3.确保所有会话数据通过HTTPS传输。

在PHPStorm中如何进行CLI模式的调试? 在PHPStorm中如何进行CLI模式的调试? Apr 01, 2025 pm 02:57 PM

在PHPStorm中如何进行CLI模式的调试?在使用PHPStorm进行开发时,有时我们需要在命令行界面(CLI)模式下调试PHP�...

描述扎实的原则及其如何应用于PHP的开发。 描述扎实的原则及其如何应用于PHP的开发。 Apr 03, 2025 am 12:04 AM

SOLID原则在PHP开发中的应用包括:1.单一职责原则(SRP):每个类只负责一个功能。2.开闭原则(OCP):通过扩展而非修改实现变化。3.里氏替换原则(LSP):子类可替换基类而不影响程序正确性。4.接口隔离原则(ISP):使用细粒度接口避免依赖不使用的方法。5.依赖倒置原则(DIP):高低层次模块都依赖于抽象,通过依赖注入实现。

如何在系统重启后自动设置unixsocket的权限? 如何在系统重启后自动设置unixsocket的权限? Mar 31, 2025 pm 11:54 PM

如何在系统重启后自动设置unixsocket的权限每次系统重启后,我们都需要执行以下命令来修改unixsocket的权限:sudo...

解释PHP中的晚期静态绑定(静态::)。 解释PHP中的晚期静态绑定(静态::)。 Apr 03, 2025 am 12:04 AM

静态绑定(static::)在PHP中实现晚期静态绑定(LSB),允许在静态上下文中引用调用类而非定义类。1)解析过程在运行时进行,2)在继承关系中向上查找调用类,3)可能带来性能开销。

框架安全功能:防止漏洞。 框架安全功能:防止漏洞。 Mar 28, 2025 pm 05:11 PM

文章讨论了框架中的基本安全功能,以防止漏洞,包括输入验证,身份验证和常规更新。

See all articles