spArgs

#1 jake

获取环境参数
成员变量

private

  • $args -- 在内存中保存的变量


成员函数


  • __construct -- 构造函数
  • get -- 获取应用程序请求变量值
  • has -- 检测是否存在某值
  • __input -- 函数式使用模型辅助类的输入函数
  • request -- 获取请求字符

位置

spArgs类位于 SP_PATH/Core/spController.php


函数详细__construct

构造函数,将$_REQUEST中的变量保存到成员变量args中。

void __construct(void)

get

获取应用程序请求变量值

获取顺序是由: $_GET -> $_POST-> $_COOKIE -> $_SERVER -> $_ENV。 同时也可以指定获取的变量所属(get,post,cookie)。

mixed get( args_name name, value default, string method)

参数:


  • args_name name 获取的变量名称,如果为空,则返回全部的请求变量
  • value default 当前获取的变量不存在的时候,将返回的默认值
  • string method 获取位置,取值GET,POST,COOKIE

返回:


  • 当args_name name为空时,将返回全部的环境变量。
  • 当存在环境变量时,返回该环境变量。
  • 当环境变量不存在时,将:

    • 如设置了value default值,则返回default值
    • 如未设置value default值,则返回FALSE

在实际应用中,spArgs类的get函数通常被$this->spArgs()代替。请参考相关教程。

has

检测是否存在某值

bool has(args_name name)

参数:


  • args_name name 待检测的环境变量名称

has()判断环境变量args_name name是否存在而且不为空。

返回:


  • 如果变量为空或不存在,返回FALSE
  • 存在而且有值,返回TRUE

在实际应用中,has()可以直接被 bool $this->spArgs("name")替代。

例子:

if( spArgs()->has("myargs") ){echo "myargs存在";}
// 等同于
if( FALSE != $this->spArgs("myargs") ){echo "myargs存在";}
__input

函数式使用模型辅助类的输入函数。

object __input(args args)

__input() 是spController的模型辅助类在使用函数式方法时的标准输入接口。

request

获取请求字符

string request(void)

request()将返回$_SERVER["QUERY_STRING"]的值。




2012-08-06 20:47:39

#2 景上青

用 spArgs 接收xheditor 编辑器 post 过来的数据时 ,图片标签被加入了反斜杠 。

如:
\"\"
请问这是框架的安全措施呢 ,如果不是框架的安全措施 。问下这个问题该如何解决呢?

2012-08-27 23:40:20

#3 jake

景上青 发表于 2012-8-27 23:40
用 spArgs 接收xheditor 编辑器 post 过来的数据时 ,图片标签被加入了反斜杠 。

如:请问这是框架的安全 ...
加入反斜杠是因为你的PHP环境的配置问题,这是Magic Quotes,在一些PHP未经优化的版本里面会存在。

具体说明在PHP手册:http://cn.php.net/manual/zh/info.configuration.phpini.magic-quotes-gpc

PHP手册也介绍了,解决这种情况可以关闭Magic Quote,或者用stripslashes函数进行过滤。

再次推荐SpeedAMP环境,最适合初学者的PHP开发环境!

2012-08-28 08:37:29