Portál AbcLinuxu, 4. prosince 2025 09:01
<?php
class Menu {
function __construct() {
$a = '$a je lokální, po ukončení konstruktoru je zapomenuta.
__toString().
<?php
class Menu {
function __construct() {
$a = '
<?php
class Menu {
private $a;
function __construct() {
$this->a = '<ul>';
$this->a.= '<li>AAA</li>';
$this->a.= '<li>BBB</li>';
$this->a.= '<li>CCC</li>';
$this->a.= '</ul>';
}
function __toString($a) {
return $this->$a;
}
}
Takový objekt sice není ideální, ale už je funkční.
function __toString($a) {
return $this->$a;
}
napsáno takto?
function __toString() {
return $this->a;
}
Děkuji
Pořád to vrací objekt a ne string
mám to takto
class Menu
{
private $menu;
function __construct()
{
$this->menu = 'Nějaký text';
}
function __toString()
{
return $this->menu;
}
}
$txt = new Menu();
var_dump($txt); // object(Menu)#9 (1) { ["menu":"Menu":private]=> string(11) "Nějaký text" }
Tak co je ještě špatně? Díky
echo $txt; var_dump($txt.'');apod.
__toString().
Ano, echo $array[$txt.''] je to správné řešení, které sice bude fungovat, ale po programátorské stránce je špatně. Netuším, čeho chceš dosáhnout, ale vidím, že na to jdeš blbě, že by sis měl pořídit nějakou učebnici programování a že tě už začínám mít dost.
$array[(string)$txt];
ako spajat retazec s prazdnym retazcom.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.