PHP笔记——java程序员看懂PHP程序,phpjava程序员看懂
1. php是一种服务器端脚本语言,类型松散的语言。
2. ?> xml风格
脚本风格
?> 简短风格
%> ASP风格
以;结尾;
3. 注释:
a) //
b) #
c) /* */
4. 变量是存储数据的容器,对大小写敏感。当变量非常长时,用定界符
$k=
…
str;
以为PHP为类型松散的语言,所以变量在声明的时候没有具体的类型关键词。
统一用$开头 + 变量名
1、 必须字母或者_开头
2、 只能包含字母数字字符和下划线
3、 对大小写敏感
5. 变量可以在PHP脚本任意位置声明。
6. 被引用/使用的脚本——作用域
a) local(局部)
b) global(全局)
c) static(静态)
函数之外声明的变量拥有global作用域,只能在函数之外进行访问。
函数内部声明的变量拥有local作用域,只能在函数之内进行访问。
函数内部调用global变量需要①在内部用global关键词进行声明;②$GLOBAL[index]中存储了所有的全局变量,可以通过超全局变量$GLOBAL[index]中获取。
7. $GLOBAL[index]这个数组在函数内可以访问,并能够用于直接更新全局变量。
8. 通常,当函数完成执行之后,会删除所有变量。假若不需要删除,即需要在首次声明的时候使用static
9. 常量无$,在脚本中无法改变其值。通过define(“常量的名称”,”常量的值”,”常量名是否对大小写敏感”);true(大小写相同)不敏感,false敏感。在类里定义常量用const关键字。
根据使用位置而改变的常量,成为魔术常量。
1) __FILE__ 当前文件夹
2) __LINE__ 当前行数
3) __FUNCTION__ 当前函数名
4) __CLASS__ 当前类名
5) __METHOD__ 当前对象的方法名
10. 打印:echo 能够输出一个以上的字符串。
print 只能够输出一个字符串,并始终返回1。
11. 字符串长度strlen();检索字符串内指定的字符或文本strpos();字符串连接用“.”,“.”后跟数字必须加空格。
12. 超全局变量:
a) $GLOBALS 引用全局作用域中的全部变量。
b) $_SERVER 保存关于报头、路径和脚本位置的信息。
c) $_REQUEST 用于收集HTML表单提交的数据。
d) $_POST 广泛用于收集提交method=”post”的HTML表单后的表单数据,也常用与传递变量。
e) $_GET 用于收集提交HTML表单(method=”get”)之后的表单数据,也可以收集URL中发送的数据。
f) $_FILES 从客户计算机向远程服务器上传文件。
g) $_ENV 获取服务器端的环境参数。(variables_order=EPGCS)
h) $_COOKIE 用于取回cookie的值。
i) $_SESSION 用于存储有关用户会话的信息,或者更改用户会话的设置。
13. include/require语句会获取指定文件中存在的所有文本/代码/标记,并复制到使用include/require语句的文件中。
a) require(静态加载),当出现错误的时候,会生成致命错误,并停止脚本。
b) include(动态加载),当出现错误的时候,只生成警告,脚本会继续执行。
c) require_once/include_once 同一个页面只包含一次。
14. 数组处理:$数组名[‘键名’]来初始化数组;也可以通过Array()函数来创建数组。
count()返回数组的长度。
数组遍历:foreach循环,用count()得到数组的长度然后用for;list()语言结构循环,仅仅用于默认数字索引;each()返回的是键值对。
while(list($key,$value)=each($array)){
}
foreach($array as $key => $value){
}
15. PHP中类对象用class关键字来声明,类的属性也有作用域,不指定作用域可以用var进行修饰,成员方法与函数的区别在于可以用关键字进行修饰。构造函数__constract,析构函数__destruct
16. “::” 作用域操作符,可以在不实例化的情况下调用类中的常量,变量和方法;
“=>” 数组成员访问符号;
“->” 对象成员访问符号;
“=&” 引用(起别名);
“=” 赋值。
17. $变量名 = new 类名([参数]); //实例化;
$变量名->成员属性 = 值; //为属性赋值;
$变量名->成员属性; //取得属性值;
$变量名->成员方法; //使用方法;
18. mysql:一般用conn.php封装,然后用require到需要的页面。
1) $conn = mysql_pconnect(“localhost”,”root”,””) or die(mysql_error());
2) mysql_select_db(“数据库名”,$conn);//连接到指定的数据库。
3) mysql_query(“set names utf8”);
4) $sql = “”;
5) $resultSet = mysql_query($sql) or die (“Invalid query : “.mysql_error);//返回sql语句结果集;
6) while($v = mysql_fetch_array($resultSet)){
7) echo “字段名:”.$v[‘title’];
8) }
9) mysql_free_result($resultSet);//关闭结果集;
10) mysql_close($conn);//关闭连接
复制去Google翻译翻译结果

要保护应用免受与会话相关的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
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

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

Atom编辑器mac版下载
最流行的的开源编辑器

Dreamweaver Mac版
视觉化网页开发工具

SublimeText3 Linux新版
SublimeText3 Linux最新版