• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Jak się nazywa poprawna metoda?

Object Storage Arubacloud
+1 głos
305 wizyt
pytanie zadane 17 maja 2016 w PHP przez niezalogowany

Witam! Ktoś jakiś czas temu (niestety nie mogę odnaleźć tego postu) napisał mi, że niepoprawnie (albo niezalecane) jest wyświetlanie html'a w ten sposób:

echo "<img src='$zdjecie1' width='100%' height='100%' border='4' alt='' /> ";

albo

echo " <p class='nazwa_d'> Bramki: ";
echo " <span class='nazwa_w'> $bramki1 </span> </p> </br>";

itp.

 

Chciałbym się nauczyć poprawnej metody. Mógłby mi ktoś napisać jak nazywa się ta metoda/technologia? 

2
komentarz 17 maja 2016 przez efiku Szeryf (75,160 p.)
edycja 17 maja 2016 przez efiku

Twiga bier. Nauczysz się przy okazji Composera i dobrych praktyk ;)

a jeśli to jest dla Ciebie za trudne(czytanie dokumentacji) to... Może lepiej zmień branżę. (Motywuję do nauki)

 

Prawda jest taka, że nauka twiga to kilka godzin pracy z nim. Composer'a ogarnąć można w jakieś 2 godzinki, później do projektów tylko composer require twig/twig i już. ;)

 

komentarz 18 maja 2016 przez event15 Szeryf (93,790 p.)
Composera można ogarnąć przy pierwszym lepszym 15minutowym filmiku na Yt.

Twiga można poznać rzeczywiście w 2 godzinki a zacząć z niego korzystać można z miejsca.
komentarz 18 maja 2016 przez niezalogowany
Efik, nie wiem czemu zakładasz, że mi się nie będzie chciało. :p

3 odpowiedzi

+4 głosów
odpowiedź 17 maja 2016 przez Comandeer Guru (601,110 p.)
Ogólnie: systemy szablonów → https://kornel.ski/szablony

Od siebie polecę Twiga → http://twig.sensiolabs.org/
–2 głosów
odpowiedź 17 maja 2016 przez Ehlert Ekspert (212,670 p.)

Biblioteka Smarty

komentarz 17 maja 2016 przez Comandeer Guru (601,110 p.)
Wow, to to jeszcze żyje? :O
komentarz 17 maja 2016 przez niezalogowany
Czyli Panie Comandeer jest lepsza od Smart? Bo nie chce się uczyć trupa. :P
komentarz 17 maja 2016 przez Comandeer Guru (601,110 p.)
Powiedziałbym Twig, ale z tego co widzę, to Smarty też nie są martwe. Prawdę mówiąc, zdziwiło mnie to. Niemniej wydaje mi się, że Twig ma przyjaźniejszą składnię.
komentarz 17 maja 2016 przez niezalogowany
Na pierwszy rzut oka (jak popatrzyłem) to strasznie to wygląda. :O Tym bardziej, że to jakieś szablony, a po prostu myślałem, że inny sposób wyświetlania htm'a w php. A liczba kursów mówiąc 'lekko' nie powala. Ale dzięki, może się tego podejmę, chociaż szczerze zwątpiłem na ten moment.
1
komentarz 17 maja 2016 przez efiku Szeryf (75,160 p.)
Uciekaj od Smarty. Każdy zawodowy programista poleci Ci Twiga. Serio, smarty mówimy nie.
–2 głosów
odpowiedź 17 maja 2016 przez xandros Nałogowiec (29,450 p.)
edycja 18 maja 2016 przez xandros

Po pierwsze, jak chcesz używać php+html:
 

?>
<div id="<?= $user->id ?>"><?= $user->name ?><div>
<?php

Po drugie: w osobnych plikach trzymasz widoki, a renderujesz je np. tą funkcją:
 

/**
 * render view
 *
 * @param string $view
 * @param array $params
 * @return string
 */
function render($view, $params = [])
{
    $filename = str_replace(['/','\\'], DIRECTORY_SEPARATOR, $view); // zamieniamy wszystkie ukosniki na takie, jakie mamy zdefiniowane w php.ini (windows uzywa \, a php //)
    ob_start(); //zaczynamy ładować (buforowac) dane
    ob_implicit_flush(false);
    extract($params, EXTR_OVERWRITE); //tworzymy zmienne z kluczy w tablicy $params (buforujemy)
    require (VIEW_DIR . $filename . '.php'); //pobieramy plik o wczesniej zdefiniowanej nazwie (buforujemy)
    return ob_get_clean(); //zwracamy zbuforowane dane w postaci stringa
}

Do drugiego argumentu możesz dać tablice ze zmiennymi. Np.:

//definiujemy katalog z widokemi (moze byc rowniez /var/www/mojastrona/widoki/ albo c:\www\mojastrona\widoki\)
define('VIEW_DIR', __DIR__ . DIRECTORY_SEPARATOR . 'view' > DIRECTORY_SEPARATOR); 
// renderujemy plik o nazwie foo.php (np. pelna nazwa bylaby /var/www/mojatrona/widoki/foo.php )
echo render('foo', ['bar' => 'baz']); //

/* plik foo.php */
/* @var $bar string */
/* <?= <- to jest to samo co <?php echo  */
?>

<div><?= $bar ?></div>
<!-- pokaże baz -->

Jako element tablicy możesz cokolwiek wrzucić.
PS nie zapomnij zdefiniowac katalogu z widokami.

1
komentarz 18 maja 2016 przez Comandeer Guru (601,110 p.)
No ok… ale to jednak część klasy, nie globalna funkcja ;)
komentarz 18 maja 2016 przez xandros Nałogowiec (29,450 p.)
Czyli mam mu napisać całą klase, a może biblioteke?
To jest takie samo lub podobne działanie, jak w przypadku templatek (pominąłem  pare rzeczy). Tu nie chodzi o to, by przez cały czas używał tego, ale by zrozumiał, jak to działa...

I ta kwestia z frontendowcami była ironią. T_T

PS napisz do devów z Wordpressa, by w końcu przesiedli się na TWIGa, bo ich szablony są passe :P
EndofSpam, bo zaraz będzie gorzej niż na Youtobe;
komentarz 18 maja 2016 przez efiku Szeryf (75,160 p.)
Twój Ticket pewnie będzie wisiał długo. No niestety w PHP mamy: Programistów PHP i Programistów Wordpressa ;>

Ale nie powiem, fajnie jakby się przenieśli.

PHPBB4 właśnie tak zrobiło.

https://www.youtube.com/watch?v=VuNFof59A7M

https://blog.phpbb.com/tag/symfony2/
komentarz 5 lipca 2016 przez niezalogowany
To Panowie... Twig czy wersja zaproponowana przez Xandros'a? Bo zacząłem już się Twig'a uczyć i nie wydaje się jakiś zły (jak na moje amatorskie oko :D).
1
komentarz 5 lipca 2016 przez Comandeer Guru (601,110 p.)

Problem ze wszystkimi systemami szablonów jest jeden: posiadają customową składnię. O wiele ważniejsze od wyboru samego systemu szablonów jest rozdział logiki aplikacji od kodu zajmującego się wyświetlaniem. A jaki tak naprawdę będzie system szablonów/widoków, to już jest sprawa wtórna. Może to być nawet PHP.

Z tym, że jeśli chodzi o PHP jako język szablonów, to z tym wiążą się dwa problemy. Pierwszym jest upierdliwa składnia (choć z drugiej strony składnia Twiga dalej jest tak samo upierdliwa – po prostu inaczej się zapisuje). Drugim jest fakt, że programiści jak widzą PHP, to bardzo często ładują do szablonów logikę (chociaż to jest problem programistów a nie technologii).

Twig jest OK, ale stawianie go jako jedyny słuszny wybór? Na pewno nie. Jest wiele innych ciekawych systemów, z bardzo ciekawym podejściem, np. PHPTAL czy (niestety martwy) xt (który de facto używał selektorów CSS do składania szablonów, co było niesamowicie przyjemne dla wszystkich mających jakąkolwiek styczność z frontem).

Podobne pytania

0 głosów
0 odpowiedzi 189 wizyt
pytanie zadane 27 grudnia 2016 w PHP przez Dar3Q Obywatel (1,200 p.)
0 głosów
1 odpowiedź 10,102 wizyt
pytanie zadane 23 marca 2016 w PHP przez KamQiX Dyskutant (9,090 p.)
0 głosów
1 odpowiedź 662 wizyt

92,572 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,959 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...