PHP 从关联数组到用户 Class
PHP from associative array to User Class
我知道我可以将关联数组转换为对象来执行此操作:
$user = (object) $_POST["user"];
我有一个 class 用户,它有方法 getName、getEmail 等。
如果我这样做
$user = (object) $_POST["user"];
$user->getName();
它给出了这个错误
Fatal error: Call to undefined method stdClass::getName()
我可以做这样的事情吗?
$user = (user) $_POST["user"];
谢谢
你可以使用这样的东西
<?php
Class User{
protected $name;
public function setName($name){
$this->name = $name;
}
public function getName(){
return $this->name;
}
}
$arr = ["name"=>"Niklesh"];
$abc = new User;
$abc->setName($arr["name"]);
var_dump($abc);
var_dump($abc->getName());
?>
不直接。您可以做的是创建一个新用户并在用户的构造函数中设置所有信息 class
Class User {
public $name;
public $otherData;
function __construct ($userdata) {
$name = $userdata['name'];
$otherData = $userdata['otherData'];
}
function GetName() {
return $name;
}
}
然后你可以这样称呼它:
$user = new User($_POST["user"]);
我知道我可以将关联数组转换为对象来执行此操作:
$user = (object) $_POST["user"];
我有一个 class 用户,它有方法 getName、getEmail 等。 如果我这样做
$user = (object) $_POST["user"];
$user->getName();
它给出了这个错误
Fatal error: Call to undefined method stdClass::getName()
我可以做这样的事情吗?
$user = (user) $_POST["user"];
谢谢
你可以使用这样的东西
<?php
Class User{
protected $name;
public function setName($name){
$this->name = $name;
}
public function getName(){
return $this->name;
}
}
$arr = ["name"=>"Niklesh"];
$abc = new User;
$abc->setName($arr["name"]);
var_dump($abc);
var_dump($abc->getName());
?>
不直接。您可以做的是创建一个新用户并在用户的构造函数中设置所有信息 class
Class User {
public $name;
public $otherData;
function __construct ($userdata) {
$name = $userdata['name'];
$otherData = $userdata['otherData'];
}
function GetName() {
return $name;
}
}
然后你可以这样称呼它:
$user = new User($_POST["user"]);