PHP: 超文本预处理器
PHP是一种服务器端的脚本语言;
PHP脚本在服务器上执行;
--------------------------------------------------------------------------------------------------------------------------
PHP文件可包含文本,HTML标签以及脚本
PHP文件想浏览器返回纯粹的HTML
--------------------------------------------------------------------------------------------------------------------------
PHP中的每个代码都必须以分号结束。分好是一种分隔符,用于把指令分隔开来;
PHP的输出文本的基础指令是echo和print。
--------------------------------------------------------------------------------------------------------------------------
在PHP中,声明变量的方法是:在变量名前加"$",注意:在引用变量的时候,一定要记得加上“$”;
声明变量还需知道:
1. 不必向PHP声明该变量的数据类型;
2. 根据变量被设置的方式,PHP会自动的把变量转换为正确的数据类型;
3. 在PHP中,变量会在使用时被自动声明;
变量的命名规则:
1. 变量名必须以字母或者下划线“_”开头;
2. 变量名只能包含字母数字字符以及下划线;
3. 变量名不能包含空格。如果变量名由多个单词构成,应当使用下划线来连接;
--------------------------------------------------------------------------------------------------------------------------
字符串变量用于存储并处理文本片段;
并置运算符:
在PHP中,只有一个字符串运算符;
并置运算符(.)用于把两个字符串值连接起来;
--------------------------------------------------------------------------------------------------------------------------
echo strlen($str); //表示输出字符串str的长度;
注意: 如果字符串中包含“
”这里算4个字符喔!!!
echo strpos($str1, $str2); //在字符串str1中查找是否含有字符串str2;
注意: 字符串首位置的下标是0,不是1;
--------------------------------------------------------------------------------------------------------------------------
PHP中条件判断语句是:
if .. else
或者: if .. elseif .. else ..
多重条件用elseif或者用switch结构:
用该结构需要注意的问题是:
1. 对表达式(通常是变量)进行一次计算;
2. 把表达式的值与结构中case的值进行比较;
3. 如果存在匹配,则执行与case关联的代码;
4. 代码执行后,一定要用break退出该结构,不然将一直执行后面的代码;
5. 如果没有case为真,则使用default语句;
--------------------------------------------------------------------------------------------------------------------------
数组:
定义数组的方法是:
$数组名 = array(数组元素);
获取数组元素个数的方法: count($数组名)或者sizeof($数组名)
输出数组中全部元素的方法(代码表示):
例:
<?php $name = array("xiaoxiangxiang", "xiaohuihui", "lalala", "hahaha");for($i=0; $i<sizeof($name); $i++) { //或者 $i<count($name);echo $name[$i]."<br>";}?> //注意i前面一定记得加$;
--------------------------------------------------------------------------------------------------------------------------
创建PHP函数:
1. 所有的函数都是用关键词function()开始;( 函数的声明方法为:function 函数名() )
2. 函数的名称应该提示他的功能,函数名称以字母或下划线开头;
3. 添加“{”开口的花括号之后的部分是函数的代码;
4. 插入函数代码;
5. 添加一个“}”函数通过关闭花括号来结束;
--------------------------------------------------------------------------------------------------------------------------
PHP表单处理:
注意: 一定要记住!!!
表单验证:
应该在任何可能的时候对用户输入进行验证。客户端的验证速度更快,并且可以减轻服务器的负载;
如果表单访问的是数据库,就非常有必要采用服务器端的验证;
在服务器验证表单的一种好的方式是,把表单传给它自己,而不是跳转到不同的页面。这样用户就可以在同一张表单页面得到错误信息。用户也就更容易发现错误了。
--------------------------------------------------------------------------------------------------------------------------
重点:
$_GET变量用于收集来自method="get"的表单中的值;
$_GET变量是一个数组,内容是由HTTP GET方法发送的变量名称和值。
$_GET变量收集来自method="get"的表单中的值。从带有GET方法的表单中发送的信息,对任何人都是可见的。(会显示在浏览器的地址栏),并且对发送的信息量也有限制(最多100个字符)。
在result.php脚本文件中:
Your information as follows:<br><?phpecho "Name: ".$_GET["name"]."<br>";echo "Age : ".$_GET["age"]."<br>";?>
注释:在使用$_GET变量时,所有的变量名和值都会显示在URL中,所以在发送密码或其他敏感不应该使用这个方法。不过,正因为变量可以显示在URL中,因此可以在收藏夹中收藏该页面。
HTTP GET方法不适合大型的变量值;值是不能超过100个字符的;
--------------------------------------------------------------------------------------------------------------------------
重点:
$_POST变量是一个数组,内容是由HTTP POST方法发送的变量名称和值。
$_POST变量用于收集来自method="POST"的表单中的值。从带有POST方法的表单发送的信息,对任何人都是不可见的(不会显示在浏览器的地址栏),并且对发送信息的量也没有限制。
在result.php脚本文件中通过对变量$_POST进行取值:
Welcome <?php echo $_POST["name"]; ?>.<br>You are <?php echo $_POST["age"]; ?> years old!
为什么使用$_POST ??
1. 通过HTTP POST发送的变量不会显示在URL中。
2. 变量没有长度限制。
--------------------------------------------------------------------------------------------------------------------------
重点:
PHP中的$_REQUEST变量包含了$_GET, $_POST以及$_COOKIE的内容。
PHP中的$_REQUEST变量可用来取得通过GET和POST方法发送的表单数据的结果。
Your information as follows:<br><?phpecho "Name: ".$_GET["name"]."<br>";echo "Age : ".$_GET["age"]."<br>";?>

要保护应用免受与会话相关的XSS攻击,需采取以下措施:1.设置HttpOnly和Secure标志保护会话cookie。2.对所有用户输入进行输出编码。3.实施内容安全策略(CSP)限制脚本来源。通过这些策略,可以有效防护会话相关的XSS攻击,确保用户数据安全。

优化PHP会话性能的方法包括:1.延迟会话启动,2.使用数据库存储会话,3.压缩会话数据,4.管理会话生命周期,5.实现会话共享。这些策略能显着提升应用在高并发环境下的效率。

thesession.gc_maxlifetimesettinginphpdeterminesthelifespanofsessiondata,setInSeconds.1)它'sconfiguredinphp.iniorviaini_set().2)abalanceIsiseededeedeedeedeedeedeedto to to avoidperformance andununununununexpectedLogOgouts.3)

在PHP中,可以使用session_name()函数配置会话名称。具体步骤如下:1.使用session_name()函数设置会话名称,例如session_name("my_session")。2.在设置会话名称后,调用session_start()启动会话。配置会话名称可以避免多应用间的会话数据冲突,并增强安全性,但需注意会话名称的唯一性、安全性、长度和设置时机。

会话ID应在登录时、敏感操作前和每30分钟定期重新生成。1.登录时重新生成会话ID可防会话固定攻击。2.敏感操作前重新生成提高安全性。3.定期重新生成降低长期利用风险,但需权衡用户体验。

在PHP中设置会话cookie参数可以通过session_set_cookie_params()函数实现。1)使用该函数设置参数,如过期时间、路径、域名、安全标志等;2)调用session_start()使参数生效;3)根据需求动态调整参数,如用户登录状态;4)注意设置secure和httponly标志以提升安全性。

在PHP中使用会话的主要目的是维护用户在不同页面之间的状态。1)会话通过session_start()函数启动,创建唯一会话ID并存储在用户cookie中。2)会话数据保存在服务器上,允许在不同请求间传递数据,如登录状态和购物车内容。

如何在子域名间共享会话?通过设置通用域名的会话cookie实现。1.在服务器端设置会话cookie的域为.example.com。2.选择合适的会话存储方式,如内存、数据库或分布式缓存。3.通过cookie传递会话ID,服务器根据ID检索和更新会话数据。


热AI工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

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

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

SublimeText3汉化版
中文版,非常好用

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),