Что лучше альтернативный синтаксис PHP или скобочки {}?

Dmitriy_2014
На сайте с 01.07.2014
Offline
276
535

Всем привет!

Как вы думаете что лучше, использование альтернативного синтаксиса PHP( : endif ), с кучей вставок из обычной HMTL разметки в связки с кусками php кода или скобочки {}, но с кучей echo?

В дефолтной теме от WordPress - Twenty_Twenty, посмотрел код и вроде бы они стараются все сделать скобочками, хотя может это и не точно :)

Заранее всем спасибо за ответы и мнения!


L
На сайте с 10.02.2015
Offline
221
#1
Альтернативный синтаксис
Mik Foxi
На сайте с 02.03.2011
Offline
1076
#2

Все альтернативное - зло.

Чтоб потом не мучаться как с <? вместо <?php потому что когда-то хотелось альтернативного и лень было написать 3 лишних знака.

Антибот, антиспам, веб файрвол, защита от накрутки поведенческих: https://antibot.cloud/ + партнерка, до 40$ с продажи.
S
На сайте с 30.09.2016
Offline
469
#3
Dmitriy_2014 :
или скобочки {}, но с кучей echo
Ты тёплое с мягким перепутал.
Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
M
На сайте с 04.12.2013
Offline
223
#4
Dmitriy_2014 :
Как вы думаете что лучше, использование альтернативного синтаксиса PHP( : endif ), с кучей вставок из обычной HMTL разметки в связки с кусками php кода или скобочки {}, но с кучей echo?
Альт. синтаксис и скобочный для разного используются. Первый для шаблонов. И echo тоже разные есть 😉 Для шаблонов – <?= ?> (а <?php echo уже устарело, т.е. можно смело не использовать, если у вас не прописана совместимость с древним пыхом; у нас в софте общего назначения обычно прописана совместимость с пыхом 5.4+, в котором <?= ?> уже работает без вариантов).
Домены и скрипт для коротких ссылок: https://u75.ru/domains-for-shortcuts
ArbNet
На сайте с 27.10.2019
Offline
124
#5
Dmitriy_2014 :

PHP или скобочки {}

Для начинающего программиста который пишет свой самопис-движок лучше нативный PHP при использовании метода MVC. То есть сначала вычисляются\получаются данные которые помещаются в массив переменных, затем определяется нужный шаблон, это html c вставками <?=$var;?>. Далее PHP инклюдит шаблон, подставляет в него(<?=$var;?> ) данные из переменных. MVC прост в понимании и быстр нативностью, сам PHP выступает в роли шаблонизатора по сути.

Скобочки или другие метки удобны для составления макетов и заполнения этих html макетов данными, хочешь на сервере в бекэнде, хочешь подгрузкой на JS во фронте. Этим способом я пользовался в своём прежнем движке лет 10 назад. И некоторые современные движки это используют, но не так продуманно, почему говорю не продуманно, потому что такие шаблонизаторы тупо замедляют работу скрипта при рендеринге вставки данных в эти скобочки, надо сначала найти скобочки, найти нужные данные, заменить скобочки в исходном тексте на данные, и повторить это много раз. К тому же во фронте эти же шаблонизаторы не в связке с фронтом и во фронте работают другие фреймворки и опять замедление. Вот и ищут мастера какие-то ускорители, всякие костыли.. А надо просто сделать хороший движок чтобы работал в бэке и фротне по одному методу.

Я лично этим вопросом занимался ещё тогда, лет 10 назад. А год назад разработал более продвинудый метод с XML. Многим тут пытался объяснить, но тем кто думать не способны и не использовали, вернее не разрабатывали сами такие методы для движка, не в состоянии это понять.

Поэтому всё зависит от уровня знаний разработчика, админа сайта. Если вы знаете PHP и пишите свой движок, то используйте метод MVC с нативными вставками, вот только это будет работать только в бекэнде на сервере. Если не опытный, то проще использовать готовый шаблонизатор, но он будет замедлять работу скрипта. Выбор за вами.

Обсуждение разработки на моём фреймворке https://discord.gg/23N4s9x2kp
Dmitriy_2014
На сайте с 01.07.2014
Offline
276
#6

Не не я не про альтернативные теги PHP типа там короткий echo-тег <?= или открывающий короткий тег <? и т.п.

Я хотел спросить про альтернативный синтаксис у некоторых управляющих конструкций типа if и как бы было бы быстрее.

<?php if (is_single()) : ?>

<?php  ?>

<p><?php the_author_posts_link(); ?></p>

<div></div>

/*

Куча HTML тегов и вставок PHP с отступами, лишними строками и всякой фигней...

*/

<?php endif; ?> 

Вот про двоеточие : и endif как я понимаю все что между ними попадает в исходный код страницы, включая отступы, лишние строки и т.п.

ИЛИ

Как в шаблоне Twenty Twenty 1.0 (кусочек):

<?php

wp_link_pages(

array(

'before'      => '<nav class="post-nav-links bg-light-background" aria-label="' . esc_attr__( 'Page', 'twentytwenty' ) . '"><span class="label">' . __( 'Pages:', 'twentytwenty' ) . '</span>',

'after'       => '</nav>',

'link_before' => '<span class="page-number">',

'link_after'  => '</span>',

)

);


edit_post_link();


// Single bottom post meta.

twentytwenty_the_post_meta( get_the_ID(), 'single-bottom' );


if ( post_type_supports( get_post_type( get_the_ID() ), 'author' ) && is_single() ) {


get_template_part( 'template-parts/entry-author-bio' );


}

?> 

Или вот лучше все чтоб одним PHP блоком было например как кусочек из шаблона Twenty Twenty.
Dmitriy_2014
На сайте с 01.07.2014
Offline
276
#7
Немного неудачный пример с кодом из Twenty Twenty, но надеюсь вы поняли, меньше открывающих и закрывающих тегов <?php ?>, но в моем случае будет много echo
Сергей
На сайте с 01.10.2010
Offline
144
#8
miketomlin #:
 <?= ?> 

У кого устарело? Например, при создании тем под WP использовать такой синтаксис, мягко говоря, не рекомендуется. Да в нормальных фреймворках такого нигде нет. Зато на всех курсах "учителя" впаривают такой синтаксис.

Вы знаете, я и сам немного... вебмастер
M
На сайте с 04.12.2013
Offline
223
#9
Dmitriy_2014 #:
Я хотел спросить про альтернативный синтаксис у некоторых управляющих конструкций типа if и как бы было бы быстрее.

Я вам про это тоже написал. Читайте внимательнее.


2on2 #:
У кого устарело? Например, при создании тем под WP использовать такой синтаксис, мягко говоря, не рекомендуется.

Тоже мне нашли образец для примера 😂 Если WP-шники ориентируются в своих рекомендациях на своих предков, это их проблемы 😉


2on2 #:
Да в нормальных фреймворках такого нигде нет.

Примеры норм. фреймворков, в которых этого нет. Может, это не PHP-фреймворки? 🤣

ArbNet
На сайте с 27.10.2019
Offline
124
#10
Dmitriy_2014 #:
Немного неудачный пример с кодом из Twenty Twenty, но надеюсь вы поняли, меньше открывающих и закрывающих тегов <?php ?>, но в моем случае будет много echo

В первом примере это нативный шаблон с вставками данных кодом PHP.

А в втором похоже на контроллер, но это просто вызов функций не ООП. Очень примитивнейший способ, сейчас всё делается классами.

Короче если понимаете о чём говорю, то выкиньте нафиг это г..  напишите, найдите более современный движок. Если не понимаете, не заморачивайтесь, работает и ладно :)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий