Avatar
Kit
Redaktor
Avatar
Kit:

Je dobré se držet zásady, že <?php je v každém souboru pouze 1× - a to výhradně na začátku.

Odpovědět 2.1.2014 15:11
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Michal Žůrek (misaz):

v html souboru bude až ho budeme potřebovat (čili při vypisování adresy) a randomImage je celý čistě php, tak tam je na začátku. Nebo kde ho mám 2×?

V javascriptu samozřejmě nebude nikde.

Editováno 2.1.2014 15:16
Nahoru Odpovědět 2.1.2014 15:13
Nesnáším {}, proto se jim vyhýbám.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Michal Žůrek (misaz)
Kit:
<img src="<?php include("randomImage.php") ?>" alt="náhodný obrázek" id="obr" />

Tady ho na začátku rozhodně nemáš. HTML a PHP se nemá míchat.

?> není vůbec potřebné, nahradí ho konec souboru.

Editováno 2.1.2014 15:19
Nahoru Odpovědět 2.1.2014 15:18
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
mkub
Redaktor
Avatar
Odpovídá na Kit
mkub:

lebo z toho vznikne pekne okoreneny gulas... ja som tiez na tom miesani HTML a PHP uz popalil, preto v celom PHP skripte uz pouzivam iba jedno <?php a vyuzivam heredoc na generovanie stranky a v heredoc sa daju vyuzivat aj premenne, escape sekvencie

 
Nahoru Odpovědět 2.1.2014 15:23
Avatar
Kit
Redaktor
Avatar
Odpovídá na Michal Žůrek (misaz)
Kit:

V mé aplikaci by to vypadalo asi takto:

<?php
$image = new RandomImage();
echo $image;

nebo i takto:

<?php
echo new RandomImage();
Editováno 2.1.2014 15:25
Nahoru Odpovědět 2.1.2014 15:24
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Michal Žůrek (misaz):

ale pořád, jak toto vypšeš do atributu src u img?

Nahoru Odpovědět 2.1.2014 15:35
Nesnáším {}, proto se jim vyhýbám.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Michal Žůrek (misaz)
Kit:

Třída RandomImage pak bude vypadat asi takto:

<?php
class RandomImage {
    private $image;

    function __construct() {
        $this->image = "images/" . rand(0, 99) . ".png";
    }

    function __toString() {
        return <<<EOT
<img src="$this->image" alt="náhodný obrázek" id="obr" />
EOT;
    }
}
Editováno 2.1.2014 15:37
Nahoru Odpovědět 2.1.2014 15:36
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Michal Žůrek (misaz)
Kit:

To nevypisuji do atributu src, ale vypisuji celý img.

Nahoru Odpovědět 2.1.2014 15:41
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
mkub
Redaktor
Avatar
Odpovídá na Michal Žůrek (misaz)
mkub:

Kit vyuziva dalsiu definiciu retazcovej premennej - heredoc a tento zapis je lepsi nez stovky funkcii echo () so znackami <?php...?> a okrem toho to umoznuje mat znacku <?php iba jeden krat a to na zaciatku suboru

 
Nahoru Odpovědět 2.1.2014 15:50
Avatar
Kit
Redaktor
Avatar
Odpovídá na mkub
Kit:

Hlavní viditelný efekt je ten, že nemusím escapovat uvozovky a že přímo do textu mohu vkládat celé objekty. To mi zajistí potřebnou párovost tagů a tím i validitu dokumentů.

Nahoru Odpovědět 2.1.2014 15:54
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
mkub
Redaktor
Avatar
Odpovídá na Kit
mkub:

trosku som tuto vlastnost toho heredoc prehliadol :[

 
Nahoru Odpovědět 2.1.2014 16:12
Avatar
Nahoru Odpovědět 2.1.2014 16:30
Nesnáším {}, proto se jim vyhýbám.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 12 zpráv z 12.