零基础学后端-PHP语言(第二期-PHP基础语法)(通过php内置服务器运行php文件)

经过上期的配置,我们已经有了php的开发环境,编辑器我们继续使用VScode,如果是新来的朋友可以看这期文章来配置VScode

零基础学前端-传统前端开发(第一期-开发软件介绍与本系列目标)(VScode安装教程)_vscode启动前端详细步骤-CSDN博客

(本系列不过多介绍php的vscode插件,没有插件也是可以用的,只是打代码的速度慢一点)

接下来我们来了解php的语法

看过我之前网络安全-皮卡丘靶场的朋友应该短暂接触过,所以系列也是,我们玩个大的,我们用网络安全的角度接入,既可以方便大家了解本系列的php语法,也对不了解网络安全的朋友拓展一些php防护的重要性

先来看一个php木马


<?php  @eval($_POST['shell']); ?>

详细介绍木马可以看以下文章(只是拓展,不看也不影响下面内容的了解)

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)_yakit web文件上传-CSDN博客

首先可以看到php开始的位置是<?php,结尾是?>,文件后缀为.php

这就是php的结构


<?php
// PHP 代码
?>

以<?php打头,?>结尾这就是php的语法结构,我们要了解的是就是中间的内容(注意每段完成后以;结尾)

我们先来看一个示例

<!DOCTYPE html>
<html>
<body><h1>PHP</h1><?php
echo "Hello World!";
?></body>
</html>

是不是很像html格式

(若想了解看以下文章,不看也不要紧,只是拓展)

零基础学前端-传统前端开发(第二期-HTML介绍与应用)(XSS防御)-CSDN博客

我们来看一个html文件


<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title></head><body></body></html>

很明显多多少少还是有差别的

为什么呢

这时候我们就要了解一些历史

PHP 最初(1994 年由 Rasmus Lerdorf 设计)就是为了动态生成 HTML 页面而生的。它的语法被设计为可以直接嵌入到 HTML 中,通过特殊的标记(如 <?php ... ?>)区分服务器端代码和静态 HTML。

看不懂就看下面通俗点的

以cosplay为例

想象一个Coser(比如扮演初音未来):

她穿着蓝色双马尾假发、短裙、长靴——这些一眼就能看到的服装,就是HTML

无论谁来拍照,看到的都是这套固定造型,不会变(就像静态网页)。

而扮演刺客信条的"大流士"就像php

它手里面的袖剑平时可以隐藏起来(PHP在服务器端运行),用的时候突然弹出来(比如生成不同的HTML内容)

所以

HTML = 定妆照里的 Cosplayer,静态、美就完事;
PHP = 藏在 Cosplayer 衣服里的袖剑,只在(标签)打开时才现身搞动态特效。

所以我们还可以知道后缀换成php,我们可以直接在html文件里加php内容(注意:必须后缀为php的情况下html里php的内容才能显示)

接下来我们像html一样用浏览器打开看看

可以看到直接是文件内容而不是运行后的内容

但是为什么html就可以直接打开呢

还是因为HTML 是静态文件,PHP 是动态脚本,需要“翻译”才能变成浏览器能看懂的东西

所以我们就要用服务器运行它才行,可以运行它的软件有很多,比如XAMPP,亦或者之前网络安全搭建皮卡丘靶场的时候我们用的phpstudy

但是我们接下来只用php内置的服务器来,首先,直接用内置服务器不用多余了解其它东西,方便不了解的朋友了解php很简洁,其次用先内置服务器,之后用其它软件时,出问题也好解决,至少知道问题(注:内置服务器只能单个启动,无法直接启动整个文件夹的业务,只适合学习)

那么怎么启动呢

首先,在包含有我们新建php文件的文件夹中打开cmd

然后输入

php -S localhost:8000

(有问题就换端口,说明端口被占用了,而且记住url栏里加入php文件名称)

可以看到成功了

至此,我们了解了php的结构语法,接下来的内容就是对php"中间"的了解了,如有问题欢迎大家指正

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

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

相关文章

扩散模型逆向过程详解:如何从噪声中恢复数据?

在扩散模型中&#xff0c;逆向过程的目标是从噪声数据逐步恢复出原始数据。本文将详细解析逆向条件分布 q(zt−1∣zt,x)q(\mathbf{z}_{t-1} \mid \mathbf{z}_t, \mathbf{x})q(zt−1​∣zt​,x)的推导过程&#xff0c;揭示扩散模型如何通过高斯分布实现数据重建。1. 核心问题 在…

2025年7月份实时最新获取地图边界数据方法,省市区县街道多级联动【文末附实时geoJson数据下载】

动态生成最新行政区划 GeoJSON 数据并结合 ECharts 实现地图下钻功能 在开发基于地图的数据可视化应用时&#xff0c;一个常见的挑战是获取准确且最新的行政区划边界数据&#xff08;GeoJSON&#xff09;。许多现有的在线资源可能数据陈旧&#xff0c;无法反映最新的行政区划调…

Spark实现WorldCount执行流程图

spark可以分区并行执行&#xff0c;同时并行执行也可以基于内存完成迭代代码对于大部分spark程序来说都是以driver开始driver结束&#xff0c;中间都是executor分布式运行

编程与数学 03-002 计算机网络 02_网络体系结构与协议

编程与数学 03-002 计算机网络 02_网络体系结构与协议一、网络体系结构的基本概念&#xff08;一&#xff09;分层体系结构的优点&#xff08;二&#xff09;协议、接口与服务的概念二、OSI参考模型&#xff08;一&#xff09;七层模型的层次划分及功能&#xff08;二&#xff…

Flutter 提取图像主色调 ColorScheme.fromImageProvider

从图像中提取主色调&#xff0c;用于动态适配颜色主题或者界面颜色。之前在 Flutter 应用里一直用的 palette_generator 插件&#xff0c;可以分析图像颜色&#xff0c;从中提取一系列主要的色调。最近发现这个谷歌官方的插件竟然不维护了&#xff0c;后续没有更新计划了。 查找…

51c自动驾驶~合集8

自己的原文哦~ https://blog.51cto.com/whaosoft/11618683 #Hierarchical BEV BEV进入定制化时代&#xff01;清华Hierarchical BEV&#xff1a;创新多模块学习框架&#xff0c;无痛落地无缝量产&#xff01;​ 论文思路 自动驾驶指通过传感器计算设备、信息通信、自…

Excel——重复值处理

识别重复行的三种方法方法1&#xff1a;COUNTIF公式法在E2单元格输入公式&#xff1a;COUNTIF($B$2:$B2,B2)>1下拉填充至所有数据行结果为TRUE的即为重复行&#xff08;会标出第二次及以后出现的重复项&#xff09;方法2&#xff1a;排序IF公式法按商机号排序&#xff08;数…

华普微Matter模块HM-MT7201,打破智能家居生态孤岛

随着智能家居渗透率与认可度的持续提升&#xff0c;消费者对于智能家居的功能诉求正从具备联网控制、远程控制与语音遥控等基础交互能力&#xff0c;升级为能通过单一的家居生态平台APP无缝控制所有的品牌设备&#xff0c;从而实现真正意义上的统一调度。这种从“单一设备联网控…

如何使用 minio 完成OceanBase社区版的归档和备份

自OceanBase社区版4.2.1BP7版本起&#xff0c;OceanBase的归档与备份功能开始兼容AWS S3及S3协议的对象存储服务&#xff0c;因此&#xff0c;许多用户选择采用 MinIO 作为其备份存储介质。因为 MinIO 兼容AWS S3云存储服务接口&#xff0c;成为了一个轻便的服务选项。 本文将…

Nacos-服务注册,服务发现(二)

Nacos健康检查 两种健康检查机制 Nacos作为注册中⼼, 需要感知服务的健康状态, 才能为服务调⽤⽅提供良好的服务。 Nacos 中提供了两种健康检查机制&#xff1a; 客⼾端主动上报机制&#xff1a; 客⼾端通过⼼跳上报⽅式告知服务端(nacos注册中⼼)健康状态, 默认⼼跳间隔5…

手写PPO_clip(FrozenLake环境)

参考&#xff1a;白话PPO训练 成功截图 算法组件 四大部分 同A2C相比&#xff0c;PPO算法额外引入了一个old_actor_model. 在PPO的训练中&#xff0c;首先使用old_actor_model与环境进行交互得到经验&#xff0c;然后利用一批经验优化actor_model&#xff0c;最后再将actor_m…

人形机器人指南(八)操作

八、环境交互与操作能力——人形机器人的“灵巧双手”环境交互与操作能力是人形机器人区别于移动平台的核心能力标志。通过仿生学设计的运动链与智能控制算法&#xff0c;机器人得以在非结构化环境中执行抓取、操纵、装配等复杂任务。本章将系统解析机械臂运动学架构、灵巧手设…

管理 GitHub Pages 站点的自定义域(Windows)

管理 GitHub Pages 站点的自定义域(Windows) 你可以设置或更新某些 DNS 记录和存储库设置,以将 GitHub Pages 站点的默认域指向自定义域。 谁可以使用此功能? GitHub Pages 在公共存储库中提供 GitHub Free 和 GitHub Free for organizations,在公共和私有存储库中提供 Gi…

【PCIe 总线及设备入门学习专栏 5.1.3 -- PCIe PERST# 时序要求】

文章目录 Overview 什么是PERST# 第一条要求 术语解释 要求含义 第二条要求 术语解释 要求含义 Perst 示例说明 过程如下 总结 Overview 首先我们看下 PCIe x协议对 PERST 的要求: A component must enter the LTSSM Detect state within 20 rms of the end of Fundamental R…

图像认知与OpenCV——图像预处理

目录 一、颜色加法 颜色加法 颜色加权加法 示例 二、颜色空间转换 RGB转Gray&#xff08;灰度&#xff09; RGB转HSV HSV转RGB 示例 三、灰度化 最大值法 平均值法 加权平均值法 四、图像二值化处理 阈值法 反阈值法 截断阈值法 低阈值零处理 超阈值法 OTSU…

Vue 3 组件通信全解析:从 Props 到 Pinia 的深入实践

引言 Vue 3 作为现代前端框架的代表之一&#xff0c;以其灵活性和高效性受到开发者的广泛喜爱。在 Vue 3 中&#xff0c;组件是构建用户界面的核心单元&#xff0c;而组件之间的通信则是实现动态交互和数据流动的关键环节。无论是简单的父子组件通信&#xff0c;还是复杂的跨组…

CodeBuddy IDE实战:用AI全栈能力快速搭建课程表网页

声明&#xff1a;本文仅是实践测评&#xff0c;并非广告 1.前言 在数字化开发的浪潮中&#xff0c;工具的革新往往是效率跃迁的起点。腾讯云 CodeBuddy IDE 是 “全球首个产设研一体 AI 全栈开发平台” &#xff0c;它不仅打破了产品、设计与研发的职能壁垒&#xff0c;更重新…

11. HTML 中 DOCTYPE 的作用

总结H5 的声明HTML5 的 DOCTYPE 声明 HTML5 中的 <!DOCTYPE html> 声明用于告诉浏览器当前文档使用的是 HTML5 的文档类型。它必须是文档中的第一行内容&#xff08;在任何 HTML 标签之前&#xff09;&#xff0c;以确保浏览器能够正确地解析和渲染页面。DOCTYPE 的作用 …

Linux C 网络基础编程

基础知识在进行网络编程之前&#xff0c;我们需要简单回顾一下计算机网络五层模型的网络层和传输层&#xff0c;这两层在面向后端编程时用的最多。物理层和链路层过于底层&#xff0c;已经完全由内核协议栈实现&#xff0c;不再细述。这里假设读者已经对计算机网络有一个大致的…

循环神经网络--NLP基础

一、简单介绍NLP&#xff08;Natural Language Processing&#xff09;&#xff1a;自然语言处理是人工智能和语言领域的一个分支&#xff0c;它涉及计算机和人类语言之间的相互作用。二、NLP基础概念词表&#xff08;词库&#xff09;&#xff1a;文本数据集出现的所有单词的集…