Migración de PHP a Latte
¿Está convirtiendo un proyecto antiguo escrito en PHP puro a Latte? Tenemos una herramienta para usted que facilitará la migración. Pruébelo en línea.
Puede descargar la herramienta desde GitHub o instalarla usando Composer:
composer create-project latte/tools
El convertidor no utiliza reemplazos simples mediante expresiones regulares, sino que utiliza directamente el parser de PHP, por lo que puede manejar sintaxis de cualquier complejidad.
Para la conversión de PHP a Latte se utiliza el script php-to-latte.php
:
php-to-latte.php input.php [output.latte]
Ejemplo
El archivo de entrada puede verse así (es parte del código del foro PunBB):
<h1><span><?= $lang_common['User list'] ?></span></h1>
<div class="blockform">
<form id="userlist" method="get" action="userlist.php">
<div class="infldset">
<?php
foreach ($result as $cur_group) {
if ($cur_group['g_id'] == $show_group) {
echo "\n\t\t" . '<option value="' . $cur_group['g_id'] . '" selected="selected">'
. htmlspecialchars($cur_group['g_title']) . '</option>';
} else {
echo "\n\t\t" . '<option value="' . $cur_group['g_id'] . '">'
. htmlspecialchars($cur_group['g_title']) . '</option>';
}
}
?>
</select>
<p class="clearb"><?= $lang_ul['User search info'] ?></p>
</div>
</form>
</div>
Genera esta plantilla:
<h1><span>{$lang_common['User list']}</span></h1>
<div class="blockform">
<form id="userlist" method="get" action="userlist.php">
<div class="infldset">
{foreach $result as $cur_group}
{if $cur_group[g_id] == $show_group}
<option value="{$cur_group[g_id]}" selected="selected">{$cur_group[g_title]}</option>
{else}
<option value="{$cur_group[g_id]}">{$cur_group[g_title]}</option>
{/if}
{/foreach} </select>
<p class="clearb">{$lang_ul['User search info']}</p>
</div>
</form>
</div>