Diskuze: Pomoct s OPP
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 10 zpráv z 10.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
zmen si funkciu rok asi takto:
public function rok($rok)
{
if($rok == 1) {
$affix = "rok";
}
elseif($rok >= 2 && $rok <= 4) {
$affix = "roky";
}
else
{
$affix = "let";
}
return $rok." ".$affix;
}
http://www.itnetwork.cz/php/oop OOP v PHP
http://www.itnetwork.cz/php/mvc RS v OOP PHP s MVC
"Nemám žádný zkušenosti s opp." ... eee
upravíš funkciu pozdrav takto
function pozdrav()
{
echo "Ahoj, já jsem ".$this->name." a je mi ". $this->let . $this->rok($this->age);
return 0;
}
U funkce rok sice zavoláš pádovaný rok, avšak jí také říkáš aby vrátila hodnotu 0.
return 0;
To znamená, že funkce rok by mohla vypadat takto:
public function rok($rok = 0){
if($rok == 1){
$pad = 'rok';
}elseif($rok >= 2 && $rok <= 4){
$pad = 'roky';
}elseif($rok < 4){
$pad = 'let';
}else{
$pad = 'roků'; //Při nule
}
return $rok . ' ' . $pad;
}
A pozdrav:
function pozdrav(){
echo "Ahoj, já jsem ".$this->name." a je mi ".$this->rok($this->age);
}
a jestli se OOP učíš, tak je skvělá funkce __toString, viz:
class TestClass
{
public $foo;
public function __construct($foo)
{
$this->foo = $foo;
}
public function __toString()
{
return $this->foo;
}
}
$class = new TestClass('Hello');
echo $class;
Ano, pokud chceš vypsat "proměnnou objektu" (instanci) jako řetězec, například pomocí funkce echo, zavolá se tato metoda __toString(), která by měla navrátit onen řetězec, který se vypíše...
Zobrazeno 10 zpráv z 10.