学习PHP中自己遇到的不熟悉的或掌握不够牢固的知识点(待续)
欢迎各位IT人事加入群:206981178,共同学习
总结的不是很好,也许有很多简单的东西对于我来说都很不熟悉,请大家勿喷
1.php中的有关变量
变量名必须以字母或下划线 "_" 开头。
变量名只能包含字母数字字符以及下划线。
变量名不能包含空格。如果变量名由多个单词组成,那么应该使用下划线进行分隔(比如 $my_string),或者以大写字母开头(比如 $myString)。
主要例子:
<span style="font-size:14px"><span style="background-color:rgb(255,255,255)"> $4site = 'not yet'; // 非法变更名;以数字开头 $_4site = 'not yet'; // 合法变量名;以下划线开头 $i站点is = 'mansikka'; // 合法变量名;可以用中文</span></span>php的预定义变量
包括:$_SERVER, $_POST, $_GET, $_REQUEST,
常用的例子:
<span style="font-size:14px"> $a = "PHP彦彦"; echo "通过\$GLOBALS来取变量值:".$GLOBALS['a']; //输出:通过$GLOBALS来取变量值:PHP彦彦 echo "<br>"; echo "当前执行脚本的文件名:".$_SERVER['PHP_SELF']; //输出:当前执行脚本的文件名:/study_php/2-3.php echo "<br>"; echo "当前执行脚本所在的根目录:".$_SERVER['DOCUMENT_ROOT']; //输出:当前执行脚本所在的根目录:H:/wwwroot echo "<br>"; echo "当前执行脚本的的绝对路径:".$_SERVER['SCRIPT_FILENAME']; //输出:当前执行脚本的的绝对路径:H:/wwwroot/study_php/2-3.php变量类型的强制转换</span><span style="font-size:14px"> PHP 中的类型强制转换和 C 中的非常像:在要转换的变量之前加上用括号括起来的目标类型。</span><span style="font-size:14px"></span><p></p><p> 允许的强制转换有:</p><p> (int),(integer) - 转换成整型</p><p> (bool),(boolean) - 转换成布尔型</p><p> (float),(double),(real) - 转换成浮点型</p><p> (string) - 转换成字符串</p><p> (array) - 转换成数组</p><p> (object) - 转换成对象</p><span style="font-size:14px">变量类型的判断 PHP 包括几个函数可以判断变量的类型,例如:gettype(),is_array(),is_float(),is_int(),is_object() 和 is_string()。<?php $s = "this is a string"; $i = 9; $arr = array(2,4,6); is_string($s); //返回TRUE,表示$s是一个字符串变量 is_string($i); //返回FALSE,表示$i不是一个字符串变量 is_array($arr); //返回TRUE,表示$arr是一个数组 is_array($s); //返回FALSE,表示$s不是一个数组</span><pre class="brush:php;toolbar:false"><span style="font-size:14px"> //gettype()获取变量类型</span>$str = "this is a string";
$int = 9;
$bool = FALSE;
echo "\$str的类型是:".gettype($str);
echo "
";
echo "\$int的类型是:".gettype($int);
echo "
";
echo "\$bool的类型是:".gettype($bool);
//设置变量类型
//bool settype ( mixed var, string type )将变量 var 的类型设置成 type。
//type 的可能值为:
//“boolean” (或为“bool”,从 PHP 4.2.0 起)
//“integer” (或为“int”,从 PHP 4.2.0 起)
//“float” (只在 PHP 4.2.0 之后可以使用,对于旧版本中使用的“double”现已停用)
//“string”
//“array”
//“object”
//“null” (从 PHP 4.2.0 起)
//如果成功则返回 TRUE,失败则返回 FALSE。
?>
版权所有地址:http://blog.csdn.net/yanfangphp
变量的删除
unset() 删除指定的变量,它是一个语句,没有返回值,试图获取 unset() 的返回值将导致解析错误。
unset($var); //删除单个变量
unset($arr['elem']); //删除单个数组元素
unset($var1, $var2, $var3); //删除一个以上的变量
2.php中有关常量
php中定义常量使用 define 函数,常量我们习惯使用大写字母
一个常量一旦被定义,就不能再改变或者取消定义。
不要在常量前面加上 $ 符号
//define(ABC,"www.phpjc.cn"); //定义常量 ABC ,并赋值
//define(SIZE,100); //定义常量 SIZE
预定义常量
PHP 向它运行的任何脚本提供了大量的预定义常量。不过很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了。
名称 说明
__LINE__ 文件中的当前行号。
__FILE__ 文件的完整路径和文件名。
__FUNCTION__ 函数名称(这是 PHP 4.3.0 新加的)
__CLASS__ 类的名称(这是 PHP 4.3.0 新加的)
__METHOD__ 类的方法名(这是 PHP 5.0.0 新加的)
位逻辑运算符
例子 名称 结果
$a and $b And(逻辑与) TRUE,如果 $a 与 $b 都为 TRUE。
$a or $b Or(逻辑或) TRUE,如果 $a 或 $b 任一为 TRUE。
$a xor $b Xor(逻辑异或) TRUE,如果 $a 或 $b 任一为 TRUE,但不同时是。
! $a Not(逻辑非) TRUE,如果 $a 不为 TRUE。
$a && $b And(逻辑与) TRUE,如果 $a 与 $b 都为 TRUE。
$a || $b Or(逻辑或) TRUE,如果 $a 或 $b 任一为 TRUE。
这样的写法也可以正确输出(我才知道):
//输出一段文字
print PHP教程网是以PHP资源分享为主的专业网站,
力争打造成教科书式的PHP教程网。
END;
for循环中的应用方法:
/* 应用1,每个条件都有 */
for ($i = 1; $i print $i. "-";
}
/* 应用2,省略第2个表达式 */
print "
";
for ($i = 1; ; $i++) {
if ($i > 10) {
break;
}
print $i. "-";
}
print "
";
/* 应用3,省略3个表达式 */
$i = 1;
for (;;) {
if ($i > 10) {
break;
}
print $i. "-";
$i++;
}
print "
";
/* 应用4 */
for ($i = 1; $i print "
";
/* 应用5 */
for ($i = 1; $i
while循环中的应用方法:
/* 应用1 */
$i = 1;
while ($i print $i++ . "-";
}
print "
";
/* 应用2 */
$i = 1;
while ($i print $i . "-";
$i++;
endwhile;
print "
";
/* 应用3 */
$i = 1;
while ($i print $i . "-";
$i++;
if ($i>10) break;
endwhile;
//www.phpjc.cn
?>
PHP中的continoe语句
$i=0;
while ($i++ if ($i==2) { // 跳出,也就是不会输出i am 2
continue;
}
echo "i am $i
";
}
?>
下班了...明天继续更新

防止会话固定攻击的有效方法包括:1.在用户登录后重新生成会话ID;2.使用安全的会话ID生成算法;3.实施会话超时机制;4.使用HTTPS加密会话数据,这些措施能确保应用在面对会话固定攻击时坚不可摧。

实现无会话身份验证可以通过使用JSONWebTokens(JWT)来实现,这是一种基于令牌的认证系统,所有的必要信息都存储在令牌中,无需服务器端会话存储。1)使用JWT生成和验证令牌,2)确保使用HTTPS防止令牌被截获,3)在客户端安全存储令牌,4)在服务器端验证令牌以防篡改,5)实现令牌撤销机制,如使用短期访问令牌和长期刷新令牌。

PHP会话的安全风险主要包括会话劫持、会话固定、会话预测和会话中毒。1.会话劫持可以通过使用HTTPS和保护cookie来防范。2.会话固定可以通过在用户登录前重新生成会话ID来避免。3.会话预测需要确保会话ID的随机性和不可预测性。4.会话中毒可以通过对会话数据进行验证和过滤来预防。

销毁PHP会话需要先启动会话,然后清除数据并销毁会话文件。1.使用session_start()启动会话。2.用session_unset()清除会话数据。3.最后用session_destroy()销毁会话文件,确保数据安全和资源释放。

如何改变PHP的默认会话保存路径?可以通过以下步骤实现:在PHP脚本中使用session_save_path('/var/www/sessions');session_start();设置会话保存路径。在php.ini文件中设置session.save_path="/var/www/sessions"来全局改变会话保存路径。使用Memcached或Redis存储会话数据,如ini_set('session.save_handler','memcached');ini_set(

tomodifyDataNaphPsession,startTheSessionWithSession_start(),然后使用$ _sessionToset,修改,orremovevariables.1)startThesession.2)setthesession.2)使用$ _session.3)setormodifysessessvariables.3)emovervariableswithunset()

在PHP会话中可以存储数组。1.启动会话,使用session_start()。2.创建数组并存储在$_SESSION中。3.通过$_SESSION检索数组。4.优化会话数据以提升性能。

PHP会话垃圾回收通过概率机制触发,清理过期会话数据。1)配置文件中设置触发概率和会话生命周期;2)可使用cron任务优化高负载应用;3)需平衡垃圾回收频率与性能,避免数据丢失。


热AI工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

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

热门文章

热工具

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

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

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

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

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能