php学习笔记
1、$_SERVER['SCRIPT_NAME']、$_SERVER['PHP_SELF']和$_SERVER['REQUEST_URI']区别
例子:http://localhost/phpwind75/test.php/%22%3E%3Cscript%3Ealert(’xss’)%3C/script%3E%3Cfoo
$_SERVER['SCRIPT_NAME']只获取脚本名,不获取参数,输出结果为:test.php;
$_SERVER['PHP_SELF']获取脚本名后,同时获取参数数据,并对参数数据进行一次urldecode操作,易出现跨站攻击现象,输出结果为:
"><script>alert('xss')</script><foo
$_SERVER['REQUEST_URI']获取脚本名后,同时获取参数原始数据,操作结果为:
test.php/%22%3E%3Cscript%3Ealert(’xss’)%3C/script%3E%3Cfoo
2、urldecode与rawurldecode区别
urldecode将"+"解析为" ",而rawurldecode则不解析
3、&&与||优先级问题
&&级别比||高
4、全局变量问题
如果在同一个文件内$a= $_GLOBALS[a];
在函数中如果要引用全局变量则必须:global $a;否则只是私有变量
例如:
global $a;
$a=2;
function test(){
echo $a;
}
test();
这个结果将为空
而
global $a;
$a=2;
function test(){
global $a;
echo $a;
}
test();
这个结果将为:2,
如果使用$_GLOBALS[a]的话,则结果也为2:
global $a;
$a=2;
function test(){
echo $GLOBALS[a];
}
test();
相关文档:
这个是由asp二级侧拉菜单改的
<script language="javascript">
// JavaScript Document
startList = function() {
if (document.all && document.getElementById) {
navRoot = document.getElementById("nav");
for (i=0; i<navRoot.childNodes.length; i++) {
node = navRoot.chil ......
本实例只利用到JQuery类库本身的函数和功能,不需要第三方插件的支持。另外,所有表单信息都是利用PHPMailer类库邮件的形式发送给管理员。如果你对JQuery的基本语法还不是很熟悉,请搜索本站的教程资源。如果你对PHPMailer用法不熟悉,请查看本站的另一篇文章《使用PHPMailer类库发送电子邮件》。
第一步,创建一个表单HTM ......
普通PHP程序员笔试题
1. 用PHP打印出前一天的时间,打印格式是2007年5月10日 22:21:21
2. PHP代码如下:
$a="hello";
$b=&$a;
unset($b);
$b="world";
echo $a;
其结果是?
3. PHP代码如下:
$str="cd";
$$str="landog";
$$st ......
说明:因为最近工作工作关系,需要开发一个在Linux下运行的Web Application,需要对现在比较流行的一些PHP框架做一个了解和评估,下面的这篇文章是笔者最近学习一个比较新的PHP Framework的一点经历和操作步骤,因为官方的手册写得比较晦涩(特别是中文的),曾经尝试遍读它那个手册再动手,读了一大半发现仍无法理解,于是 ......