Nette Documentation Preview

syntax
Umstellung von PHP auf Latte
****************************

.[perex]
Migrieren Sie ein altes Projekt, das in reinem PHP geschrieben wurde, nach Latte? Wir haben ein Tool, das Ihnen die Migration erleichtert. [Probieren Sie es online |https://php2latte.nette.org] aus.

Sie können das Tool von [GitHub |https://github.com/nette/latte-tools] herunterladen oder es mit Composer installieren:

```shell
composer create-project latte/tools
```

Der Konverter verwendet keine einfachen Ersetzungen mit regulären Ausdrücken, sondern greift direkt auf den PHP-Parser zu, so dass er jede komplexe Syntax verarbeiten kann.

Das Skript `php-to-latte.php` wird für die Konvertierung von PHP nach Latte verwendet:

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


Beispiel .[#toc-example]
------------------------

Die Eingabedatei könnte so aussehen (sie ist Teil des PunBB-Forum-Codes):

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

Erzeugt diese Vorlage:

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

Umstellung von PHP auf Latte

Migrieren Sie ein altes Projekt, das in reinem PHP geschrieben wurde, nach Latte? Wir haben ein Tool, das Ihnen die Migration erleichtert. Probieren Sie es online aus.

Sie können das Tool von GitHub herunterladen oder es mit Composer installieren:

composer create-project latte/tools

Der Konverter verwendet keine einfachen Ersetzungen mit regulären Ausdrücken, sondern greift direkt auf den PHP-Parser zu, so dass er jede komplexe Syntax verarbeiten kann.

Das Skript php-to-latte.php wird für die Konvertierung von PHP nach Latte verwendet:

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

Beispiel

Die Eingabedatei könnte so aussehen (sie ist Teil des PunBB-Forum-Codes):

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

Erzeugt diese Vorlage:

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