遇到一个问题,大家帮忙解决一下

wang_youyu 2010-10-15 02:36:48
在hdwiki 源代码中 有这样一段函数

class base {

var $ip;
var $time;
var $db;
var $view;
var $cache;
var $forward;
var $user = array();
var $setting = array();
var $advertisement = array();
var $channel = array();
var $style=array();
var $plugin = array();
var $get = array();
var $post = array();

function base(& $get,& $post) {
$this->time = time();
$this->ip =util::getip();
$this->get=& $get;
$this->post=& $post;

$this->init_db();
$this->init_cache();
$this->init_user();
$this->init_template();
$this->init_global();
}........下面的我就不写了

在其他的文件中 继承完这个类 就可以这样调用了
$news=$this->post[news];

有一点我感到疑惑 按照普通的用法 是$_POST [news] 这里这样调用的话 $this->post =& $get 这里只是一个实体调用啊 怎么会得到表单的数据呢?

还有一个问题是 hdwiki中 表单中一些 input textarea “name” 属性都是这样的 <textarea id="content" name="news[content]"> <input class="txt" name="news[from]" value="" class="txt" type="text">

name属性 这样的什么意思 而且$news=$this->post[news];这样调用


请大家帮帮忙 谢谢啦!!
...全文
87 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
wang_youyu 2010-10-15
  • 打赏
  • 举报
回复
谢谢了 明白了 需要传参!
lazysmile 2010-10-15
  • 打赏
  • 举报
回复
类的构造函数已经做过中间的工作了,构造函数你知道吧?
wang_youyu 2010-10-15
  • 打赏
  • 举报
回复
对啊 我现在的问题就是 $news=$this->post[news]; 他怎么用这种形式接收呢 这就等于是 $news=$post[news] $post不能接受不是吗
lazysmile 2010-10-15
  • 打赏
  • 举报
回复
在实例化BASE的时候你把表单的传值当作参数,比如像

$newbase = new Base($_POST,$_GET);
然后你就可以用
$this->post['news']去获取$_POST['news'] 了
lazysmile 2010-10-15
  • 打赏
  • 举报
回复
接受当然只能用$_POST,接完你想怎么玩都可以,不用拘泥于只用一种形式
wang_youyu 2010-10-15
  • 打赏
  • 举报
回复
不是表单所有post的数据 都放在$_POST[] 数组中吗 也能用$post[]接受吗
lazysmile 2010-10-15
  • 打赏
  • 举报
回复
ok,全局变量数组也是数组,你穿参谁管你这个,数组$post和$_POST[]处理时没有分别
wang_youyu 2010-10-15
  • 打赏
  • 举报
回复
$post和$this->post 当然是一样的喽 但是和$_POST['news'] 就有区别了吧 $this->post 是类中的一个成员 而$_POST['news'] 是一个超级全局变量数组
lazysmile 2010-10-15
  • 打赏
  • 举报
回复
既然都是一样的类型,只是换了皮就不认识了?你怎么理解$post和$this->post的?
wang_youyu 2010-10-15
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lazysmile 的回复:]
$this->post是数组,$_POST也是一个数组,$this->post['news']和$_POST['news']没有什么区别;在$this->post = &$get里,&符号我觉得是多余的;在这个类构造函数里已经把表单传来的值$get 和$post作为参数对类的成员($this->post,$this->get)进行初始化了,所以在new这个类后你可以直接使用成员$t……
[/Quote]

$this->post是数组,$_POST也是一个数组, 这话倒是能理解 但是$this->post['news']和$_POST['news']没有什么区别 这句话怎么理解
lazysmile 2010-10-15
  • 打赏
  • 举报
回复
$this->post是数组,$_POST也是一个数组,$this->post['news']和$_POST['news']没有什么区别;在$this->post = &$get里,&符号我觉得是多余的;在这个类构造函数里已经把表单传来的值$get 和$post作为参数对类的成员($this->post,$this->get)进行初始化了,所以在new这个类后你可以直接使用成员$this->post[]或$this->get[]去获取表单传的值。

20,397

社区成员

发帖
与我相关
我的任务
社区描述
“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法利用了C、Java和Perl,该语言的主要目标是允许web开发人员快速编写动态网页。
phpphpstorm 技术论坛(原bbs)
社区管理员
  • 开源资源社区
  • phpstory
  • xuzuning
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧