从浏览器上看,使用 header(location) 就跳转到另一个页面了,但事实上,php却仍然会执行后台的代码的,假如后面的代码有不安全逻辑的,那就直接无视开发者设定的条件,继续把后面的东西给执行了。
如:
if(true)
{
header('location://www.jb51.net');
}
file_put_contents('test.txt', 'ok');
这个代码中,粗心的程序员会以为 header('location://www.jb51.net'); 就over了,事实上,后台的代码却仍然被执行了,所以使用 header(location) 的时候,不管是封装在另一个函数还是直接写的,都建议在后面加 exit() 确认程序中止。
====soap
今天运行一个demo代码,出现了“class 'soapclient' not found”错误。搜索了一下,需要启动soap服务,但是在php.ini的windows extensions里面没有找到soap.dll,一开始还以为我的php版本没有包含这个dll,到php安装目录下的ext子目录看了一下,发现php_soap.dll是存在的。那就简单了,直接添加extension=php_soap.dll到windows extensions部分,重启动apache就好了。
ssl默认也是不启动的,extension=php_openssl.dll,可以在这里将它前面";"去掉就好了。
var_dump( $query );//把结果当成文本打印出来查看
$globals //保存所有全局变量(只在当前页面中的)
get_defined_vars() //返回由所有已定义变量所组成的数组(包括全局变量,超全局变量等)
get_defined_constants() //返回由所有已定义常量所组成的数组
如对本文有疑问,
点击进行留言回复!!
相关文章:
-
-
-
-
-
-
-
-
-
管理后台无限级菜单
管理后台菜单遍历很久就想做一个通用的管理后台出来,一直太懒没做,今天开始粗略搞了一下,只是先把框架搭建好,菜单栏...
[阅读全文]
-
桥接模式学习总结
桥接模式引言假如一个系统需要加入报表模块,主要的开发点是数据的获取和报表的显示方式。数据的获取可能是从系统数据库...
[阅读全文]
-
网友评论