Nette Documentation Preview

syntax
Migración de PHP a Latte
************************

.[perex]
¿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 |https://php2latte.nette.org].

Puede descargar la herramienta desde [GitHub|https://github.com/nette/latte-tools] o instalarla usando Composer:

```shell
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`:

```shell
php-to-latte.php input.php [output.latte]
```


Ejemplo
-------

El archivo de entrada puede verse así (es parte del código del foro PunBB):

```php
<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:

```latte
<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>
```

{{leftbar: /@left-menu}}

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>