昨天在实验室花了一天时间看了英文版的php_tizag_tutorial,因为上学期用php和bootstrap写过一个租房网站,对php还是比较熟悉.现在总结一下php_tizag_tutorial里面一些没用过或者遗忘的知识点.
1.打印的字符串里面包含引号时,要注意采取下面的两种方式之一:
1). 在引号前加上反斜杠"\".
2). 使用单引号.
举例如下:
1 <?php2 // This won't work because of the quotes around specialH5!3 echo "<h5 id="I-love-using-PHP">I love using PHP!</h5>";4 // OK because we escaped the quotes!5 echo "<h5 id="I-love-using-PHP">I love using PHP!</h5>";6 // OK because we used an apostrophe '7 echo "<h5 id="I-love-using-PHP">I love using PHP!</h5>";8 ?>
2.String Creation Heredoc
使用注意标识符要在单独一行,不可缩进.
举例如下:
1 $my_string = <<<TEST2 Tizag.com3 Webmaster Tutorials4 Unlock your potential!5 TEST;6 echo $my_string;
输出结果:
1 Tizag.com Webmaster Tutorials Unlock your potential!
3.include函数与require函数的区别
使用include函数时,若出现错误,只是提出警告,代码依然执行下去;使用require函数时,则会报错,并且终止执行下去.
强烈推荐使用后者.
4.POST与GET的区别
1). POST
HTML代码片段:
1 <form action="process.php" method="post">2 <select name="item">3 ...4 <input name="quantity" type="text" />
PHP代码片段:
1 $quantity = $_POST['quantity'];2 $item = $_POST['item'];
2). GET
HTML代码片段:
1 <form action="process.php" method="get">2 <select name="item">3 ...4 <input name="quantity" type="text" />
PHP代码片段:
1 $quantity = $_GET['quantity'];2 $item = $_GET['item'];
3). 两者区别
GET传递数据是通过url,上面的例子中跳转到process.php页面是,会在url后面附上"?item=##&quantity=##",其中?是告诉浏览器接下来的这几项是变量.所以,传递重要信息如密码等,就不要使用GET方式传递数据,这样会完全暴露出来,非常不安全.
5.PHP创建文件
在PHP中,fopen函数用于打开一个文件,当该文件不存在时,就创建该文件.
1 $ourFileName = "testFile.txt";2 $ourFileHandle = fopen($ourFileName, 'w') or die("can't open file");3 fclose($ourFileHandle);
6.PHP打开文件
打开文件的方式有几种:
1). Read: 'r'
只读,文件指针在文件开头.
2). Write: 'w'
只写,文件指针在文件开头.而且会把之前的内容覆盖.
3). Append: 'a'
只写,文件指针在文件末尾.
7.PHP删除文件
使用unlink函数.
1 $myFile = "testFile.txt";2 unlink($myFile);
8.PHP在字符串里匹配字段
使用strpos函数返回相应字段位置.
举例如下:
1 $numberedString = "1234567890"; // 10 numbers from 1 to 02 $fivePos = strpos($numberedString, "5");3 echo "The position of 5 in our string was $fivePos";
结果如下:
1 The position of 5 in our string was 42 3 Finding All Occurrences in a String with Offset
举例如下:
1 $numberedString = "1234567890123456789012345678901234567890";2 $offset = 0; // initial offset is 03 $fiveCounter = 0;4 while($offset = strpos($numberedString, "5", $offset + 1)){5 $fiveCounter++;6 echo "<br />Five #$fiveCounter is at position - $offset";7 }
结果如下:
1 Five #1 is at position - 4 2 Five #2 is at position - 143 Five #3 is at position - 244 Five #4 is at position - 34
9.PHP分割字符串
使用explode函数.
举例如下:
1 $rawPhoneNumber = "800-555-5555";2 $phoneChunks = explode("-", $rawPhoneNumber);3 echo "Raw Phone Number = $rawPhoneNumber <br />";4 echo "First chunk = $phoneChunks[0]<br />";5 echo "Second chunk = $phoneChunks[1]<br />";6 echo "Third Chunk chunk = $phoneChunks[2]";
结果如下:
1 Raw Phone Number = 800-555-55552 First chunk = 8003 Second chunk = 5554 Third Chunk chunk = 5555
10.PHP连接字符串
使用implode函数.

要保护应用免受与会话相关的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),