Snažím se na Raspberry Pi provozovat následující kód, viz. niže. Raspbian vycházející z Debianu 8 - PHP 5.x, nefungovalo. PHP bylo trošku vousaté. Zkusil jsem tedy Raspbian postavený na Debianu 9 - PHP 7.0 a taky to neběží. Stejná zkušenost nakonec i s VPS s Ubuntu 16.04 - PHP-7. Gentoo - PHP 7.1, OK. VPS s Ubuntu 18.04 - PHP 7.2, OK.
<?php
class A
{
private $BB;
public function __construct()
{
$this->$BB = new B;
$this->$BB->PridejPolozku("2");
$this->$BB->PridejPolozku("3");
}
public function Prehled()
{
$this->$BB->Generuj();
}
}
class B
{
private $polozky=array();
public function __construct()
{
$this->$polozky[] = "1";
}
public function PridejPolozku($polozka)
{
$this->$polozky[] = $polozka;
}
public function Generuj()
{
foreach($this->$polozky as $polozka)
echo($polozka."<br>");
}
}
$AA = new A();
$AA->Prehled();
Chyba:
Notice: Undefined variable: polozky in /var/www/html/test.php on line 27
Fatal error: Uncaught Error: Cannot access empty property in /var/www/html/test.php:27 Stack trace: #0 /var/www/html/test.php(9): B->__construct() #1 /var/www/html/test.php(43): A->__construct() #2 {main} Next Error: Cannot access empty property in /var/www/html/test.php:27 Stack trace: #0 /var/www/html/test.php(9): B->__construct() #1 /var/www/html/test.php(43): A->__construct() #2 {main} thrown in /var/www/html/test.php on line 27
Ok:
1
2
3
Poněkud mě to mate, protože o OOP a PHP čtu docela dlouho. Snažím se dělat nějakou totální prasárnu a PHP >7.1 už je blbuvzdornější, PHP <= 7.0 to prostě neumí, nebo ty verze jsou náhoda a nemám něco doinstalované, odkomentované, ... ?
Díky