Web技术核心与安全风险(三)Web 后端安全

Web技术核心与安全风险(三)Web 后端安全

PART 1   PHP基本语法PHP介绍PHP(HyperText Preprocessor):超文本预处理器官方网站: https://www.php.net/学习工具:Trae+Phpstudy如何在Trae 中搭建PHP环境1.trae--扩展插件市场里中,搜索PHP,并安装php debug 、php IntelliSense2.在扩展设置里面,配置PHP解释器总共要设置三个,如下图所示,没有的自己创建,路径设为自己电脑里PHP的路径即可PHP基础语法PHP 代码必须包含在 <?php ... ?>标签中。1.打印hello world<?phpecho "hello world";?>语句结束:每条语句以 ;(分号)结束。   注释 //单行注释 /*多行注释*/2.变量命名规则:(1)变量以 $ 符号开始,后面跟着变量的名称(2)变量名必须以字母或者下划线字符开始(3)变量名只能包含字母、数字以及下划线(A-z、0-9 和_)(4)变量名不能包含空格(5)变量名是区分大小写的($y 和 $Y 是两个不同的变量)示例:<?php$message = "欢迎学习 PHP!";echo $message; // 输出变量内容echo "<h1>" . $message . "</h1>";?>PHP数组创建数组(1)[ ]----php版本5.4+(2)array() 函数用于创建数组示例<?php$student = ["xiaoming", "xiaolin", "xixi", "xiaoai"];echo $student[0];?>//输出结果为xiaomingif 条件语句判断条件语句:根据不同情况执行不同代码语法if (条件){条件成⽴时要执⾏的代码;}示例:<?php$score = 75;if ($score >= 60) {echo "成绩及格";}?>//输出结果为成绩及格if...else语句在条件成⽴时执⾏⼀块代码,条件不成⽴时执⾏另⼀块代码,请使⽤ if....else语句语法if (条件){条件成⽴时执⾏的代码;}else{条件不成⽴时执⾏的代码;}示例<?php$score = 55;if ($score >= 60) {echo "成绩及格";} else {echo "成绩不及格";}?>//输出结果为成绩不及格if...elseif....else语句在若⼲条件之⼀成⽴时执⾏⼀个代码块,请使⽤if...elseif....else语句。语法if(条件1){条件1成⽴时执⾏的代码;}else if(条件2){条件2成⽴时执⾏的代码;}else{以上条件不成⽴时执⾏的代码;}示例<?php$score = 75;if ($score >= 90) {echo "成绩优秀";} elseif ($score >= 60) {echo "成绩及格"; // 75 >= 60 成立} else {echo "成绩不及格";}?>//输出结果为成绩及格PHP循环1.for循环语法for (初始值; 条件; 增量){要执⾏的代码;}示例<?php$student = ['xiaoming', 'xiaolin', 'xixi', 'xiaogao'];for ($i = 0; $i <= 3 ; $i=$i+1) {echo $student[$i].' ' ;}?>2.while 循环while 循环将重复执⾏代码块,直到指定的条件不成⽴语法while (条件){要执⾏的代码;}示例<?php$count = 3;$student = ['xiaoming', 'xiaolin', 'xixi', 'xiaogao'];while ($count >= 0) {echo $student[$count].' ' ;$count=$count-1;}?>PHP函数PHP的真正威⼒源⾃于它的函数。在PHP中,提供了超过 1000 个内建的函数PHP 函数准则函数的名称应该提示出它的功能函数名称字⺟下划线开头(不能以数字开头)PHP⾃定义函数<?phpfunction functionName(){// 要执⾏的代码}?>PHP类与函数类是抽象的概念,仅仅是模板。⽤来描述具有相同属性⽅法对象的集合。⽐如:"⼈"是⼀个 类。对象实例,是某⼀个具体的事物 。如 “张三”则是具体存在 是⼀个对象示例<?phpheader("Content-Type: text/html; charset=utf-8");class student{public $name;public $age;public function say() { //自定义函数echo $this->name. " 你好!";}}$stu1 = new student();//new表示调用函数,new student 表示调用student这个函数$stu1 -> name = "xiaoming";echo $stu1->name;$stu1 -> say();?>//输出结果为xiaoming你好!PHP魔术方法(Magic Methods)PHP魔术方法(Magic Methods)在PHP中具有特定的命名和功能• 魔术方法不需要显式调用,而是由PHP解释器在特定时机自动触发。• 通常用两个下划线(__)开头,后跟方法名称,如构造方法 __construct()示例:<?phpclass Person {public function __construct() {echo "construct is coming ~";}}$p1 = new Person();?>超全局变量PHP 的强⼤在于它能轻松处理⽤⼾通过 Web 提交 的数据,这依赖于⼏个特殊的超全局变量,它们是 PHP ⾃动创建的数组。PHP提供了预定义的超全局变量,用来获取HTTP 请求信息

案例:#准备一个登录的页面<!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><form action="b.php" method="get">姓名:<input type="text" name="name"><br>年龄:<input type="number" name="age"><br><button type="submit">提交</button></form></body></html>#准备另一个获取数据的php页面<?phpheader("Content-Type: text/html; charset=utf-8");$name = $_GET['name'] ;$age = $_GET['age'] ;echo "<h3>接收到的参数:</h3>";echo "姓名:{$name}<br>";echo "年龄:{$age}<br>";echo "<a href='a.php'>返回填写表单</a>";?>序列化 (serialize)• 传递多个数据可以用序列化对象• 是将⼀个 PHP 对象(包括它的类名所有属性属性值)转换为⼀个可存储可传输的字符串的过程。反序列化 (unserialize)是将这个字符串还原回原来的 PHP 对象示例:#准备一个登录的页面<!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><form action="b.php" method="get">姓名:<input type="text" name="name"><br>年龄:<input type="number" name="age"><br>密码:<input type="password" name="pwd"><br><button type="submit">提交</button></form></body></html>#准备另一个获取数据的php页面<?phpheader("Content-Type: text/html; charset=utf-8");$name = $_GET['name'] ;$age = $_GET['age'] ;$pwd = $_GET['pwd'] ;echo "<h3>接收到的参数:</h3>";echo "姓名:{$name}<br>";echo "年龄:{$age}<br>";echo "密码:{$pwd}<br>";class student{public $name;public $age;public $pwd;}$stu1 = new student();$stu1 -> name = $name;$stu1 -> age = $age;$stu1 -> pwd = $pwd;echo "<h3>序列化后的数据:</h3>";$serialized = serialize($stu1);echo $serialized;echo "<h3>反序列化后的数据:</h3>";$restored = unserialize($serialized);echo $restored->name ;echo "<br>";

Read more

[特殊字符] Python在CentOS系统执行深度指南

[特殊字符] Python在CentOS系统执行深度指南

文章目录 * 1 Python环境安装与配置问题 * 1.1 系统自带Python的限制 * 1.2 安装Python 3的常见问题及解决方案 * 1.3 SSL模块问题解决方案 * 1.4 环境变量配置与管理 * 1.5 软件集合(SCL)替代方案 * 2 包管理与虚拟环境问题 * 2.1 pip包管理器问题与解决方案 * 2.2 虚拟环境的最佳实践 * 2.3 依赖兼容性问题解决 * 2.4 虚拟环境目录结构理解 * 3 模块导入与路径问题 * 3.1 Python模块搜索路径机制 * 3.2 常见模块导入错误与解决 * 3.3 路径配置最佳实践 * 3.4 特殊模块问题处理 * 3.

By Ne0inhk
【C++写详细总结①】从for循环到算法初步

【C++写详细总结①】从for循环到算法初步

前言 本文通过小编自身学习的进程从而总结出本文,也希望大家可以好好学习,帮助到自己 这个是萌新考场救场代码,与本文一起食用更佳 for循环计数器 for(定义计数变量;定义结束条件;每次循环所做的动作) 示例 for(int i=1;i<=10;i++) //首先定义“i”变量作为计数数组,赋初值为“1”//然后每次循环判断条件是否成立,不成立则退出//最后每循环执行条件,此示例为每循环“i”增加1 而计数器就是在for循环有了一定执行范围的基础上创建了一个数组,进行++计数 示例 #include<iostream>// 万年不变的框架usingnamespace std;intmain(){int n; cin>>n;//输入数值表示从1~n中有几个数字int

By Ne0inhk

DeOldify图像上色效果展示:黑白医疗影像→组织结构色彩增强显示

DeOldify图像上色效果展示:黑白医疗影像→组织结构色彩增强显示 1. 项目简介与核心价值 医疗影像分析是医学诊断中的重要环节,但很多历史医疗影像资料都是黑白的,这给医生的诊断和分析带来了一定困难。传统的黑白影像缺乏色彩信息,很多细微的组织结构和病理变化难以直观观察。 基于DeOldify深度学习模型的黑白图像上色技术,为医疗影像分析带来了全新的可能性。这个技术能够智能地为黑白医疗影像添加逼真的色彩,让组织结构更加清晰可见,帮助医生更好地识别和分析影像中的细节信息。 1.1 技术原理简述 DeOldify采用先进的U-Net深度学习架构,结合ResNet编码器,通过大量医疗影像数据训练而成。模型能够理解不同组织结构的色彩特征,为黑白影像智能添加符合医学标准的色彩表现。 核心优势: * 智能色彩还原:基于深度学习自动识别组织类型并添加相应色彩 * 细节保持:在色彩化的同时保持影像的细节清晰度 * 医学准确性:色彩表现符合医学影像标准 * 批量处理:支持大量医疗影像的快速处理 2. 医疗影像上色效果展示 2.1 组织切片影像上色效果 案例一:病理切片色彩

By Ne0inhk
2025年最新vscode无法下载.vsix插件(官网marketplace找不到DownLoad Extension下载.vsix插件按钮)的解决方案【以C/C++插件1.23.5之后的版本为例】

2025年最新vscode无法下载.vsix插件(官网marketplace找不到DownLoad Extension下载.vsix插件按钮)的解决方案【以C/C++插件1.23.5之后的版本为例】

目录 一、背景 二、解决方法1 三、解决方法2 1、访问C/C++插件的github仓库地址 2、选择对应版本的Asserts 3、下载相应版本的.vsix文件 4、vscode安装插件“Install from VSIX” 四、总结 一、背景 最近因为公司安全要求,内网开发需要严格隔离,无法访问公共互联网,在安装完vscode后,代码库使用的是C/C++语言,无法进行变量、函数的声明、实现的跳转,使用起来特别麻烦,因此安装C/C++插件能够更方便进行代码阅读。而因内网隔离,vscode基本的插件无法通过在线联网的方式安装,只能通过安装.vsix文件进行安装。 之前下载.vsix文件都是通过访问官网扩展市场 Extensions for Visual Studio family

By Ne0inhk