详细介绍:PHP基础-语法初步(第七天)

news/2025/9/17 14:59:47/文章来源:https://www.cnblogs.com/ljbguanli/p/19096782

详细介绍:PHP基础-语法初步(第七天)

PHP基础-语法初步

一.PHP代码标记

和HTML的文档标签一样 PHP也有一个开始和结束标记

<?php ?>

1.1 Php支持的代码标记写法有哪些?

1. 标准 PHP 标签(推荐)
<?php
// PHP 代码
?>
  • 说明:最常用、最标准的写法
  • 优点:兼容所有 PHP 版本和配置
  • 官方推荐:✅
2. 短标签(Short open tag)
<?
// PHP 代码
?>
  • 说明:需要在 php.ini 中开启 short_open_tag=On
  • 问题:容易与 XML 的 <?xml ?> 冲突
  • 不推荐
    请添加图片描述
3. 回声短标签(Short echo tag)
<?= "Hello World";
?>
<
?=
'hello world<br>' .'hello world2<br>' .'hello world3'?>
  • 说明:相当于 <?php echo "Hello World"; ?>
  • 默认开启:从 PHP 5.4 起,无需额外配置
  • 优点:简洁、常用在模板中
  • 推荐:✅

结果如图:

请添加图片描述

4. ASP 风格标签(ASP-style tag)
<
%
// PHP 代码
%>
  • 说明:ASP 风格,需要在 php.ini 中开启 asp_tags=On
  • 注意:PHP 7.0 之后完全废弃
  • 不推荐:❌
  • ASP 是 Active Server Pages 的缩写,是微软在 1996 年左右推出的一种 服务器端脚本技术,用于在网页上生成动态内容
5. 脚本式标签(Script style, 不常用)
<script language="php">// PHP 代码</script>
  • 说明:早期用于 HTML 页面嵌入 PHP
  • 兼容性差,几乎不用
  • 不推荐:❌

二.从HTML中分离

参考https://www.php.net/manual/zh/language.basic-syntax.phpmode.php

凡是在一对开始和结束标记之外的内容都会被 PHP 解析器忽略,这使得 PHP 文件可以具备混合内容。 可以使 PHP 嵌入到 HTML 文档中去,如下例所示。

<p>This is going to be ignored by PHP and displayed by the browser.</p><?php echo 'While this is going to be parsed.';?><p>This will also be ignored by PHP and displayed by the browser.</p>

结果如下图

请添加图片描述

三.注释

参考https://www.php.net/manual/zh/language.basic-syntax.comments.php

3.1 行注释-//|#

<?php
echo 'This is a test';
// 这是单行 c++ 样式注释
/* 这是一条多行注释
另一行也是注释 */
echo 'This is yet another test';
echo 'One Final Test';
# 这是单行 shell 风格的注释
?>

3.2 块行注释-‘/* */’

<?php
echo 'This is a test';
// 这是单行 c++ 样式注释
/* 这是一条多行注释
另一行也是注释 */
echo 'This is yet another test';
echo 'One Final Test';
# 这是单行 shell 风格的注释
?>

常用语函数的功能注释

/**
* @description
* @param {*} name
* @return {*} name
*/

四.php指令分割符

参考https://www.php.net/manual/zh/language.basic-syntax.instruction-separation.php

4.1 php必须每个语句后用分号结束指令吗?

在 PHP 中几乎所有语句都必须以分号 ; 结束,因为分号是 PHP 用来区分语句的标志。

4.1.1. 必须加分号的情况
  • 赋值语句:
$name = "Alice";
$age = 18;
  • 函数调用:
echo "Hello, world!";

请添加图片描述

  • 控制语句(如 returnbreakcontinue):
return $result;
break;

4.1.2. 可以省略分号的特殊情况

PHP 标签的最后一条语句之前,如果紧跟着 ?> 关闭标签,分号可以省略:

<?php
echo "Hello, world!" // 最后这条语句可以省略分号
?>

但是在现代 PHP 开发中,尤其是纯 PHP 文件(可以不写关闭 ?> 标签),建议每条语句都加分号,避免出错。

例如

<?php echo 'Ending tag excluded';
4.1.3. 例外:控制结构块

ifforwhileforeachfunction 定义等块结构,本身不需要分号,但块内语句仍然要:

if ($age >
18) {
echo "Adult";
// 这里需要分号
}

4.1.4 总结:
  • PHP 几乎所有普通语句都必须分号结尾
  • 块结构(函数、循环、条件)本身不需要分号,但块内语句仍然需要。
  • 省略分号只在文件末尾紧跟 ?> 时才可能,但不推荐这样做,因为现在都是纯php文件并不会嵌入到HTML,通常书写习惯中就不建议使用标记结束符?>,所以文件末尾也要加上分号分割符。

五.VScode 开发插件

1. PHP 语言支持

  • PHP Intelephense
    • 功能:智能提示、自动补全、函数/类跳转、代码分析、错误提示。
    • 使用方式:安装后即可支持大部分 PHP 项目,无需额外配置。
  • PHP Debug (by Felix Becker)
    • 功能:Xdebug 调试支持,可以设置断点、变量监控、堆栈跟踪。
    • 配合 Xdebug 使用,调试 PHP 项目非常方便。
  • PHP DocBlocker
    • 功能:自动生成 PHPDoc 注释,支持函数、类、变量等注释模板。
    • 对于维护大型项目或团队合作非常有用。

2. 代码格式化 & 美化

  • PHP CS Fixer
    • 功能:代码风格自动修复,支持 PSR-1 / PSR-2 / PSR-12 标准。
    • 配合 VS Code Format Document 可以一键美化代码。
  • Prettier - Code formatter
    • 功能:多语言统一格式化,包括 HTML、JS、CSS,适合 PHP 项目中前端部分。

3. 辅助开发 & 提高效率


4. Git / 版本控制

  • GitLens
    • 功能:代码历史、作者、修改记录直观展示。
    • 对团队协作或大型项目维护很有帮助。

5. 数据库 & API 调试


6. 推荐组合:

  • 必装:PHP Intelephense + PHP Debug + PHP CS Fixer
  • 辅助开发:PHP DocBlocker + PHP Namespace Resolver
  • 前端部分:Prettier + Auto Rename Tag + Bracket Pair Colorizer 2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/906632.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何通过Python SDK 删除 Collection

本文介绍如何通过Python SDK删除一个已创建的Collection。 重要 删除Collection后,该Collection所有数据将删除且不可恢复,请谨慎操作。 前提条件已创建Cluster:创建Cluster已获得API-KEY:API-KEY管理已安装最新版SDK:安装DashVector SDK接口定义 Python示例: Client.del…

Inventor Professional 2026.1.1 产品设计与工程制图

描述 Autodesk Inventor提供了专业级机械设计、文档编制和产品仿真工具。参数化建模、直接建模、自由形状建模和基于规则的设计功能的强大组合。用于钣金、结构件设计、三维布管、电缆和线束、演示、渲染、仿真、机床设计等的集成工具。值得信赖的 DWG™ 兼容性,强大的基于模型…

叮当计步微信小程序系统

1. 概述总结 叮当计步小程序系统是基于微擎系统交付的应用,微擎系统是一款基于 PHP 开发的开源应用生态系统,主要用于快速搭建微信公众号、小程序等应用,同时支持 Web 系统开发与部署。该计步系统历经数月研发,投入 20 多万研发费用,注重数据可靠性、系统扩展性和高并发支…

叮当计步微信小程序系统

1. 概述总结 叮当计步小程序系统是基于微擎系统交付的应用,微擎系统是一款基于 PHP 开发的开源应用生态系统,主要用于快速搭建微信公众号、小程序等应用,同时支持 Web 系统开发与部署。该计步系统历经数月研发,投入 20 多万研发费用,注重数据可靠性、系统扩展性和高并发支…

maven项目连接DM数据库和基本sql使用

maven项目连接DM数据库和基本sql使用直接引入Maven依赖<!-- DM数据库JDBC驱动 --> <dependency><groupId>com.dameng</groupId><artifactId>DmJdbcDriver18</artifactId><version>8.1.3.140</version> </dependency>dem…

maven项目连接DM数据库和基本sql使用

maven项目连接DM数据库和基本sql使用直接引入Maven依赖<!-- DM数据库JDBC驱动 --> <dependency><groupId>com.dameng</groupId><artifactId>DmJdbcDriver18</artifactId><version>8.1.3.140</version> </dependency>dem…

【中国计算机学会CCF主办】第六届人工智能、大数据与算法国际学术会议(CAIBDA 2026)

第六届人工智能、大数据与算法国际学术会议(CAIBDA 2026) 2026 6th International Conference on Artificial Intelligence, Big Data and Algorithms (CAIBDA 2026)重要信息 大会时间:2026年6月12-14日 大会地点:天津(线上同步进行) 大会官网:www.caibda.org *为报名…

【中国计算机学会CCF主办】第六届人工智能、大数据与算法国际学术会议(CAIBDA 2026)

第六届人工智能、大数据与算法国际学术会议(CAIBDA 2026) 2026 6th International Conference on Artificial Intelligence, Big Data and Algorithms (CAIBDA 2026)重要信息 大会时间:2026年6月12-14日 大会地点:天津(线上同步进行) 大会官网:www.caibda.org *为报名…

仿腾讯会议——退出房间

客户端 1、添加绘图成员 2、 实现视频的重绘事件 3、实现关闭函数 定义信号和函数 关闭函数实现 添加清空列表功能 在房间内添加用户映射表 中介者退出函数 移除用户展示界面 离开房间请求处理 服务端

蓝桥杯分享经验

系列文章目录 提示&#xff1a;小白先看系列 第一章 蓝桥杯的钱白给吗 文章目录 系列文章目录前言一、自我介绍二、经验讲解:1.基础知识2.进阶知识3.个人观点 三、总结四、后续 前言 第十六届蓝桥杯已经省赛已经结束了&#xff0c;相信很多小伙伴也已经得到自己的成绩了。接下…

C++:面试题汇总

C 基础 指针和引用的区别 指针是一个变量&#xff0c;存储的另一个变量的内存地址&#xff0c; 可以重复赋值执行不同的对象&#xff0c;运行为nullptr 适合动态分配&#xff0c;例如使用new,delete时&#xff1b; 用在实现链表、树等数据结构时&#xff1b; 以及明确没有对象…

python调wfdb库读心电数据库的注释文件中NUL问题

切入点如题。开始使用字符串中通配符&#xff0c;没用。查找DeepSeek给出下面结果&#xff1a; 在 Python 中&#xff0c;字符串中出现 [NUL] 表示字符串包含一个 ASCII 空字符&#xff08;ASCII 值为 0 的字符&#xff0c;即 \x00&#xff09;。这个符号通常是某些编辑器或调…

iOS Runtime与RunLoop的对比和使用

Runtime 机制 核心概念 Objective-C 的动态特性&#xff1a;Objective-C 是一门动态语言&#xff0c;很多工作都是在运行时而非编译时决定的消息传递机制&#xff1a;方法调用实际上是发送消息 objc_msgSend(receiver, selector, ...)方法决议机制&#xff1a;动态方法解析、…

【信息系统项目管理师】第16章:项目采购管理 - 23个经典题目及详解

更多内容请见: 备考信息系统项目管理师-专栏介绍和目录 文章目录 【第1题】【第2题】【第3题】【第4题】【第5题】【第6题】【第7题】【第8题】【第9题】【第10题】【第11题】【第12题】【第13题】【第14题】【第15题】【第16题】【第17题】【第18题】【第19题】【第20题】【第…

fscan教程1-存活主机探测与端口扫描

实验目的 本实验主要介绍fscan工具信息收集功能&#xff0c;对同一网段的主机进行存活探测以及常见服务扫描。 技能增长 通过本次实验的学习&#xff0c;了解信息收集的过程&#xff0c;掌握fscan工具主机探测和端口扫描功能。 预备知识 fscan工具有哪些作用&#xff1f; …

kafka在线增加分区副本数

1、问题来源 线上有一个物联网项目依赖kafka集群中指定主题消费&#xff0c;前些天kafka集群中的某一台机器出现了故障&#xff0c;导致kafka这个主题的数据一直无法消费&#xff0c;经查发现为了保证消息的顺序性此主题仅设置了一个分区&#xff0c;但是副本也仅有一个&#…

高等数学-积分

一、不定积分 定理&#xff1a;如果函数f(x)在区间I上连续&#xff0c;那么f(x)在区间I上一定有原函数&#xff0c;即一定存在区间I上的可导函数F(x)&#xff0c;使得F(x)f(x) &#xff0c;x∈I 简单地说&#xff1a;连续函数必有原函数。 极限lim*0->x {[∫*0^x sin(t^2)…

Java 多线程编程:解锁高性能应用开发的密钥

在计算机编程的广袤领域中&#xff0c;Java 凭借其跨平台性、丰富的类库和强大的生态系统&#xff0c;成为众多开发者&#xff0c;尤其是大学生入门编程的热门选择。而在 Java 的众多特性里&#xff0c;多线程编程宛如一颗璀璨的明珠&#xff0c;掌握它对于开发高性能、响应迅速…

【设计模式】责任链+模板+工程模式使用模板

前言 方便写出优雅&#xff0c;解耦&#xff0c;高内聚&#xff0c;高复用的代码。 Demo // 1. 定义验证器接口&#xff08;责任链模式&#xff09; public interface Validator {Validator setNext(Validator next);boolean validate(Data data); }// 2. 创建抽象验证器&am…

智能体应用如何重塑未来生活?全面解析技术场景与实在Agent突破

智能体应用有哪些&#xff1f;在科技飞速发展的当下&#xff0c;人工智能正以前所未有的速度渗透到我们生活的方方面面。而智能体技术&#xff0c;作为人工智能领域的一颗璀璨新星&#xff0c;正逐渐展现出其重塑未来生活的巨大潜力。从办公效率的提升到医疗服务的优化&#xf…