У меня проблема с объявлением свойства , которое является ассоциативным массивом внутри php класса.
class Friends {
private $db;
public $friendRequest;
public $addedUser;
public $frName;
function __construct(){
$this->friendRequest = array();
$this->addedUser = array();
$this->frName = array();
}
public function friendInfo($getId) {
$this->db = new DataBase();
$this->friendRequest = $this->db->frFrom($getId);
foreach ($this->friendRequest['userId'] as $key => $friendId) {
$this->addedUser = $this->db->frFrom($friendId);
$this->frName['name'] = $this->addedUser[0]['nickName'] ;
$this->frName['id'] = $this->friendRequest['id'][$key] ;
$this->frName['friendId'] = $this->friendRequest['userId'][$key];
}
return $this->frName;
}
}
Япоявляется сообщение об ошибке userId переменная undefined .Я попытался определить вспомогательный массив, добавив другой конструктор, такой как
function __construct($this->friendRequest){
$this->friendRequest['userId'] = array();
}
. Я все еще получаю сообщение об ошибке, не определяя переменную userId .Я также должен объявить другие ассоциативные массивы, но если я выясню проблему с массивом friendRequest ['user_id'] , я смогу решить другие.Может ли кто-нибудь помочь мне в этом?
Я изначально написал этот код без объявления переменных, пока работал над ним на своем веб-сервере .Я не получал никаких ошибок , и он работал совершенно нормально .
Но когда я решил это перенести мое приложение на мою локальную машину на котором работает XAMPP сервер, я начал видеть ошибки.Поэтому я понял, что мне нужно удалить все свойства так же, как я объявил:
private $db;
, а затем с помощью $ this -> вызвать свойства, которые в данном случае являются ассоциативными массивами.
исходный код такой же, как здесь, и он не дал мне никакой ошибки , когда я выполнял работу на веб-сервере.
class Friends {
private $db;
public function friendInfo($getId) {
$this->db = new DataBase();
$friendRequest = array();
$friendRequest = $this->db->frFrom($getId);
foreach ($friendRequest['userId'] as $key => $friendId) {
$addedUser = $this->db->frFrom($friendId);
$frName['name'] = $addedUser[0]['nickName'] ;
$frName['id'] = $friendRequest['id'][$key] ;
$frName['friendId'] = $friendRequest['userId'][$key];
}
return $frName;
}
}