Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

PHP to TWIG converter


markimax

Recommended Posts

Коллеги посоветуйте нормальный online конвертер php с html в twig
Потому что https://php2twig.com г .. редкостное.

Элементарных конструкций правильно обработать не может

Запарился я уже "руками" все шаблоны "конвертировать" :ugeek:

 

  • +1 1
Надіслати
Поділитися на інших сайтах

Не тестил еще

 

__://openconverter.io/

 

Проверил, тоже лажа, линк не удаляю может допилят

Змінено користувачем Yurta
Надіслати
Поділитися на інших сайтах

Надіслати
Поділитися на інших сайтах


12 минут назад, AWARO сказал:

а этот?)
https://phptotwig.com/

 

Уже более менее ...
Давай еще :)

Надіслати
Поділитися на інших сайтах

Только что, markimax сказал:

Уже более менее ...
Давай еще :)

обновил пост выше
пока больше ни чего не обнаружил)

Надіслати
Поділитися на інших сайтах


18 минут назад, Yurta сказал:

Не тестил еще

 

__://openconverter.io/

 

Проверил, тоже лажа, линк не удаляю может допилят

Да лажа :(
Пока более менее корректно работает https://phptotwig.com/
Но переменные массивов не корректно раздупляет

Надіслати
Поділитися на інших сайтах

  • 1 year later...
В 23.07.2017 в 11:54, markimax сказал:

Пока более менее корректно работает https://phptotwig.com/
Но переменные массивов не корректно раздупляет

тоже лажу гонит

php:      

<?php if ($round_mode==3)  { ?> value  = value.toFixed(3); <?php } ?>

на выходе:

      {% if (round_mode == 3) %} value  = value.toFixed(3); {% endif %} 

результат: PHP Fatal error:  Uncaught exception 'Twig_Error_Syntax' with message 'Unexpected token "number" of value "3" ("name" expected)

перелопачиваем код, меняем везде  if на swith с case-ами:

и получаем такой код:

              swith( round_mode )
                 3 value  = value.toFixed(3);

 

 

 

Надіслати
Поділитися на інших сайтах

6 минут назад, ambalocha69 сказал:

<?php if ($round_mode==3)  { ?> value  = value.toFixed(3); <?php } ?>

ЧТО ЭТО за php

код от js?

Хм должно быть корректно

Надіслати
Поділитися на інших сайтах

3 минуты назад, chukcha сказал:

ЧТО ЭТО за php

код от js?

да, это php внутри js

последний вариант работает

Надіслати
Поділитися на інших сайтах

  • 1 year later...
В 23.07.2017 в 11:54, markimax сказал:

Пока более менее корректно работает https://phptotwig.com/

 

С глюками работает и сейчас.

Не может корректный с точки зрения PHP код c else и вложенными if переложить на twig.

Полный идиотизм - использование twig в опенкарт, особенно в админке.

 

Приходится логичный и отлаженный код PHP переводить в это нелогичное чудо-юдо. И снова отлаживать.

Плюсов от twig-а - ноль, зато геморроя в разработке добавляет.

 

Все эти псевдо-языки - хрень полнейшая, в угоду чайникам...

Надіслати
Поділитися на інших сайтах

25 минут назад, sitecreator сказал:

 

С глюками работает и сейчас.

Не может корректный с точки зрения PHP код c else и вложенными if переложить на twig.

Полный идиотизм - использование twig в опенкарт, особенно в админке.

 

Приходится логичный и отлаженный код PHP переводить в это нелогичное чудо-юдо. И снова отлаживать.

Плюсов от twig-а - ноль, зато геморроя в разработке добавляет.

 

Все эти псевдо-языки - хрень полнейшая, в угоду чайникам...

 

Это для того чтобы не было фрагментации, т. е. чтобы в tpl не вызывали "классы" их методы и т.п.
Так что в принципе все правильно
А в админ части вы можете спокойно использовать tpl
 

$this->config->set('template_engine', $this->config->get('template_engine')); // т.e. чтобы стандартные twig
	        
$this->data['header'] = $this->load->controller('common/header');
$this->data['footer'] = $this->load->controller('common/footer');
$this->data['column_left'] = $this->load->controller('common/column_left');
			
$this->config->set('template_engine', 'template');	
$html = $this->load->view($this->template, $data); // свои как tpl
$this->response->setOutput($html);

 

Надіслати
Поділитися на інших сайтах

@markimax , гребаный конвертер и кривые руки его создателя!

 

вот понятный код PHP

var thumb = "<?php if(!empty($thumb)) echo $thumb;?>";

 

конвертер превратил его в фиг знает что:

 

var thumb = "{% if (thumb is not empty) %} {{ thumb }}{% endif %}";

 

Из-за этого нифига не работает!   Он влепил лишний пробел!   Какого лешего?

 

sitecreator_ru_P3HTmmAxaQ.jpg

 

И это очень сложно отслеживать!

 

2 часа назад, markimax сказал:

А в админ части вы можете спокойно использовать tpl

 

да только так и надо.

А эти конвертеры - на помойку!  Элементарные вещи преобразовать корректно не могут.

Надіслати
Поділитися на інших сайтах

Указать в вызываемом шаблоне расширение .tpl

 

public function index(&$route, &$args) {
		// This is only here for compatibility with old templates
		if (substr($route, -3) == 'tpl') {
			$view = substr($route, 0, -3);
		}
		
		if (is_file(DIR_TEMPLATE . $route . '.twig')) {
			$this->config->set('template_engine', 'twig');
		} elseif (is_file(DIR_TEMPLATE . $route . '.tpl')) {
			$this->config->set('template_engine', 'template');
		}		
	}

Это код события

вот это нужно править

 

<?php
class ControllerEventTheme extends Controller {
	public function index(&$route, &$args) {
		// This is only here for compatibility with old templates
		if (substr($route, -4) == '.tpl') {
			$view = substr($route, 0, -4);
		}
		
		if (is_file(DIR_TEMPLATE . $route . '.twig')) {
			$this->config->set('template_engine', 'twig');
		} elseif (is_file(DIR_TEMPLATE . $view . '.tpl')) {
			$this->config->set('template_engine', 'template');
		}		
	}
}

 

Надіслати
Поділитися на інших сайтах

10 минут назад, sitecreator сказал:

А эти конвертеры - на помойку!  Элементарные вещи преобразовать корректно не могут.

:) Напиши лучше

Надіслати
Поділитися на інших сайтах

  • 3 months later...
  • 2 months later...
В 23.07.2017 в 11:36, AWARO сказал:

 

Надіслати
Поділитися на інших сайтах


  • 3 months later...
В 17.01.2020 в 01:53, AWARO сказал:

тоже безбожно глючит

на входе

             <?php } ?>
                addFunction (<?php echo $option_row; ?>,<?php echo $option_value_row; ?>,html);

на выходе

addFunction({{ option_row }}{% endif %},{{ option_value_row }},html);

 

пол-дня угробил перелопачивая несчастных 100 строк

  • +1 1
Надіслати
Поділитися на інших сайтах

1 час назад, ambalocha69 сказал:

тоже безбожно глючит

да.. есть такое.

Надіслати
Поділитися на інших сайтах


  • 2 years later...
On 11/5/2019 at 11:44 AM, borborich said:

а может кто знает как наоборот twig в php конвертнуть, а то че то гугл только односторонние варианты подсовывает пхп в твиг?

https://sloth-dev.com/twig2tpl

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.