Существует класс, как определено ниже
class table {
public $mysqli;
public $display;
public function mysqli() {
$mysqli = new mysqli('hostname', 'username', 'password', 'database');
return $mysqli;
}
public function __construct() {
$this->mysqli = $this->mysqli();
}
public function display() {
$sql = "SELECT * FROM table";
if($data = $this->mysqli->query($sql)) {
$this->display = $data->fetch_assoc();
};
}
}
$table = new table();
$table->display();
while($table->display) {
$this->display['name']. " " . $this->display['country'];
};
публичной функции $this->display
было присвоено значение a $data->fetch_assoc()
.Косвенно while($table->display = $data->fetch_assoc())
эквивалентно while($data->fetch_assoc()
.но результат не перебирает список.Вместо этого он отображает только первую строку снова и снова, пока система не выйдет из строя.
Существует ли правило, управляющее классом php, о котором я не знаю, или я пропускаю свои команды?