php将数组传递给类函数

时间:2011-03-15 16:56:59

标签: php

您好我想将数组传递给我的类函数,但我没有得到该值。 PLZ帮助我解决这个示例代码的问题

 <?php
if(isset($_POST['submituser']))
{
$user = new User();
$user->connect();
$name=$_POST['name'];
$age=$_POST['age'];

$result = array($name=>$name,$age=>$age);


$user->setUser($result);

$user->disconnect();
}
?>

,类功能就像这样

function setUser($result) 
{
echo $result[$name];
$errors_all = array();
$validate = new Validator();
$validate->addRequiredFieldValidator($result[$name],"First name is required.")."";
}

我可以通过$ result [0]得到我希望按价值得到它 感谢

2 个答案:

答案 0 :(得分:4)

编写代码的方式,如果我的名字是Jay并且我31岁,那么数组将会是这样的......

{
'Jay' => 'Jay',
'31' => 31
}

键应该是常量字符串,而不是(在这种情况下)变量,如$符号所示。

试试这个。

$result = array(
    'name'=>$name,
    'age'=>$age
);

这将产生

{
'name' => 'Jay',
'age' => 31
}

重要您还必须更改回显数组值的方式

//echo $result[$name];
echo $result['name'];

答案 1 :(得分:3)

传递它时,您不应该在数组键中使用$。相反,他们应该引用字符串:

// Incorrect:
$result = array($name=>$name,$age=>$age);

// Should be:
$result = array('name'=>$name,'age'=>$age);