Czy istnieje odpowiednik nowej składni brzytwy ASP.NET w PHP?Składnia brzytwa odpowiednik PHP
Odpowiedz
Jedyny Razor-podobnej składni PHP ma coś podobnego jest w co wierzę jest nazywany "zmienna ekspansja":
$two = "Two";
echo "One $two Three";
Wynik:
One Two Three
Ale, nie można tego używać poza blokiem PHP lub poza podwójnym ciągiem znaków (przynajmniej nie w tym, w jaki sposób chcesz go użyć). To nie działa:
<?php
$two = "Two";
?>
<p>One $two Three</p>
Wynik:
<p>One $two Three</p>
Inne konstrukcje PHP Programowanie poza bloków PHP zrobić nic, jak również. Tak więc żadna z tych rzeczy nie jest zrównoleglona w PHP: http://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-razor.aspx
Najbliższy znajduje się w silniku szablonowym Fat-Free Framework, ale wymaga użycia nawiasów klamrowych. Zamiast PHP gadatliwy <?php echo $x['y']['z']; ?>
lub krótkich znaczników równoważne <?=$x['y']['z']?>
, beztłuszczowej zastosowań {@x.y.z}
miałem tylko patrzeć „Razor składni” się i wydaje się na tyle miły dla ASP.NET. W PHP chciałem jednak zastosować pewien szablon (zwykle korzystam z wersji Smarty), aby uzyskać ładne, ładnie wyglądające strony HTML o minimalnej strukturze kontrolnej i zmiennych referencjach.
za każdym razem, gdy ktoś mówi "Smarty", muszę zamieścić dwa odnośniki: jeden do beztłuszczowej alternatywy, [Dwoo] (http://dwoo.org/) - i jeden do mojego ultracienkiego silnika, [Outline] (http://outline.mindplay.dk/) ... Nie tylko bezwstydnie podłączam tutaj swój własny silnik - Smarty to dinozaur, i jest o wiele lepsza alternatywa dla szablonów z PHP ... –
Jest Razor podobny widok silnikiem dla ram Yii:
http://www.yiiframework.com/extension/razorviewrenderer
To bardzo proste - nie wydaje się mieć żadnych realnych współzależności Yii, więc nie mogę sobie tego wyobrazić byłoby bardzo trudno wyciągnąć to z Yii i użyć go w innym kontekście.
Pamiętaj, to jest po prostu parser szablonu stylu Razor - kompiluje szablony stylu Razor w zwykłe, waniliowe skrypty PHP. Opiera się na Yii dla rzeczywistego widoku silnika.
Dzięki @ mindplay.dk za połączenie z urządzeniem Razor View Renderer dla platformy Yii! Chciałem udostępnić ostatnie znalezisko, Twig (http://www.twig-project.org/) jako alternatywę, jeśli szukasz samodzielnego silnika szablonów dla PHP. Nie jest to składnia Razor, ale jest łatwa do rozbudowy .
Oto kilka przykładów z serwisu:
For Each:
{% for user in users %}
* {{ user.name }}
{% else %}
No user has been found.
{% endfor %}
Bloki & Dziedziczenie:
{% extends "layout.html" %}
{% block content %}
Content of the page...
{% endblock %}
Filtry:
{{ "now"|date("m/d/Y") }}
{{ "I like %s and %s."|format(foo, "bar") }}
returns: I like foo and bar. (if the foo parameter equals to the foo string)
Nadal przeprowadzam wstępne testy & testując z tym silnikiem i podoba mi się to do tej pory!
Wydaje ktoś to zrobił: https://github.com/steffans/razr
Ale chciałbym jeszcze konwertować do gałązka, to jest o wiele bardziej wydajny.
Silnik szablonu Laravel's Blade wykorzystuje podobną składnię do maszynki Razor. https://laravel.com/docs/master/blade
- 1. brzytwa składnia - pętla foreach
- 2. JavaScript odpowiednik php mktime
- 3. Odpowiednik Perla PHP get_file_contents()?
- 4. Odpowiednik JAXB PHP
- 5. Rubinowy odpowiednik PHP $ this
- 6. Interesująca składnia PHP: "domniemana, jeśli"?
- 7. ASP.NET brzytwa Html.TextArea
- 8. Odpowiednik preg_match PHP w Pythonie
- 9. Python: Jaki jest odpowiednik PHP "=="
- 10. Odpowiednik Java's HashSet w PHP
- 11. PHP: odpowiednik funkcji SUBSTRING_INDEX MySQL?
- 12. C# odpowiednik php asocjacyjnej tablicy
- 13. foreach odpowiednik php w jquery?
- 14. Perlowy odpowiednik języka PHP escapeshellarg
- 15. Odpowiednik PHP znajomego lub wewnętrznego
- 16. Odpowiednik listy PHP() w Pythonie
- 17. Odpowiednik PHP dla funkcji parseInt?
- 18. Odpowiednik PHP metody "str.format" Pythona?
- 19. Gdzie jest zdefiniowane "Brzytwa Huttona"?
- 20. Składnia składnia ASC
- 21. Jaki jest odpowiednik dekodowania JavaScript w PHP?
- 22. Odpowiednik tabeli mysql_list_tables w PHP PDO?
- 23. Czy istnieje odpowiednik zestawu Java w php?
- 24. Czy istnieje odpowiednik Java funkcji http_build_query PHP?
- 25. Co to jest odpowiednik preg_quote w PHP?
- 26. Odpowiednik PHP do metody C# string.IsNullOrEmpty?
- 27. Czy istnieje odpowiednik MySQL dla PHP preg_replace?
- 28. Odpowiednik PHP error_log dla logów informacyjnych?
- 29. Odpowiednik PHP do dziennika powolnego zapytania MySQL?
- 30. Odpowiednik funkcji PHP number_format w jQuery/javascript
W pierwszym przykładzie brakuje ";" po przypisaniu ciągu. –
@Russell Dias - Dziękuję, nie zauważyłem tego! –
Mój php jest zardzewiały, ale nie możesz użyć =$two?> – pqsk