PHP Döngüleriyle Dinamik HTML
Şablonların içinde PHP dizilerinden HTML tabloları ve listeleri oluşturun.
PHP Döngüleriyle Dinamik HTML, CoddyKit'te ücretsiz bir PHP Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, PHP Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. PHP Academy kursu toplamda 4 dersten oluşur.
PHP ile HTML Oluşturma
PHP'nin en güçlü kullanım alanlarından biri, veri dizilerinden listeler, tablolar, açılır listeler, gezinme menüleri ve daha fazlasını dinamik olarak oluşturmaktır.
Liste Oluşturma
Bir PHP dizisinden sırasız bir HTML listesi oluşturunuz:
<?php
$fruits = ['Apple', 'Banana', 'Cherry', 'Durian'];
?>
<ul>
<?php foreach ($fruits as $fruit): ?>
<li><?= htmlspecialchars($fruit) ?></li>
<?php endforeach; ?>
</ul>HTML Tablosu Oluşturma
İki boyutlu bir diziden dinamik bir tablo oluşturunuz:
<?php
$users = [
['Alice', 'alice@test.com', 'Admin'],
['Bob', 'bob@test.com', 'User'],
];
?>
<table>
<thead><tr><th>Name</th><th>Email</th><th>Role</th></tr></thead>
<tbody>
<?php foreach ($users as [$name, $email, $role]): ?>
<tr>
<td><?= htmlspecialchars($name) ?></td>
<td><?= htmlspecialchars($email) ?></td>
<td><?= htmlspecialchars($role) ?></td>
</tr>
<?php endforeach; ?>
</tbody>
</table>Select Açılır Listesi Oluşturma
Bir diziden HTML select öğesi oluşturunuz:
<?php
$countries = ['TR' => 'Turkey', 'US' => 'United States', 'DE' => 'Germany'];
$selected = 'TR';
?>
<select name="country">
<?php foreach ($countries as $code => $name): ?>
<option value="<?= htmlspecialchars($code) ?>"
<?= $code === $selected ? 'selected' : '' ?>>
<?= htmlspecialchars($name) ?>
</option>
<?php endforeach; ?>
</select>Satırlara Zebra Deseni Uygulama
Okunabilirliği artırmak için satır stillerini dönüşümlü olarak uygulayınız:
<?php
$rows = range(1, 8);
?>
<table>
<?php foreach ($rows as $i => $row): ?>
<tr class="<?= $i % 2 === 0 ? 'even' : 'odd' ?>">
<td>Row <?= $row ?></td>
</tr>
<?php endforeach; ?>
</table>Koşullu CSS Sınıfları
Veri koşullarına göre CSS sınıfları uygulayınız:
<?php
$tasks = [
['title' => 'Write tests', 'done' => true],
['title' => 'Deploy app', 'done' => false],
];
?>
<ul class="task-list">
<?php foreach ($tasks as $task): ?>
<li class="task <?= $task['done'] ? 'done' : 'pending' ?>">
<?= htmlspecialchars($task['title']) ?>
</li>
<?php endforeach; ?>
</ul>Sayfalama Bağlantıları
Bir for döngüsünden sayfalama kullanıcı arayüzü oluşturunuz:
<?php
$totalPages = 10;
$currentPage = 3;
?>
<nav class="pagination">
<?php for ($p = 1; $p <= $totalPages; $p++): ?>
<a href="?page=<?= $p ?>"
class="<?= $p === $currentPage ? 'active' : '' ?>">
<?= $p ?>
</a>
<?php endfor; ?>
</nav>İç İçe HTML İçin İç İçe Döngüler
İç içe döngülerle iç içe HTML yapıları oluşturunuz:
<?php
$menu = [
['Home', '/', []],
['Products', '/products', ['Widgets', 'Gadgets']],
['About', '/about', []],
];
?>
<ul>
<?php foreach ($menu as [$label, $href, $sub]): ?>
<li><a href="<?= $href ?>"><?= htmlspecialchars($label) ?></a>
<?php if ($sub): ?>
<ul>
<?php foreach ($sub as $child): ?>
<li><?= htmlspecialchars($child) ?></li>
<?php endforeach; ?>
</ul>
<?php endif; ?>
</li>
<?php endforeach; ?>
</ul>Boş Durum Yönetimi
Şablonlarda boş dizi durumunu her zaman ele alınız:
<?php
$posts = [];
?>
<?php if (!empty($posts)): ?>
<ul>
<?php foreach ($posts as $post): ?>
<li><?= htmlspecialchars($post['title']) ?></li>
<?php endforeach; ?>
</ul>
<?php else: ?>
<p class="empty-state">No posts found. <a href="/new">Create one!</a></p>
<?php endif; ?>Veri Öznitelikleri Oluşturma
Verileri HTML veri öznitelikleri aracılığıyla JavaScript'e aktarınız:
<?php
$products = [
['id' => 1, 'name' => 'Widget', 'price' => 9.99],
['id' => 2, 'name' => 'Gadget', 'price' => 24.99],
];
?>
<div class="product-grid">
<?php foreach ($products as $p): ?>
<div class="product-card"
data-id="<?= $p['id'] ?>"
data-price="<?= $p['price'] ?>">
<?= htmlspecialchars($p['name']) ?>
</div>
<?php endforeach; ?>
</div>PHP ve JavaScript İçin JSON
PHP dizilerini json_encode kullanarak JavaScript'e güvenli biçimde aktarınız:
<?php
$config = [
'apiUrl' => '/api/v1',
'userId' => $user['id'] ?? 0,
'locale' => 'en-US',
];
?>
<script>
const APP_CONFIG = <?= json_encode($config, JSON_HEX_TAG | JSON_HEX_APOS) ?>;
console.log(APP_CONFIG.apiUrl);
</script>Hızlı Kontrol
XSS'yi önlemek için kullanıcı tarafından denetlenen dizeleri HTML içinde görüntülerken hangi işlevi kullanmalısınız?
Özet: Döngülerle Dinamik HTML
Temel teknikler:
- Şablonlarda alternatif foreach/for iki nokta üst üste söz dizimini kullanınız
- Çıktıyı her zaman
htmlspecialchars()ile kaçışlayınız - Özniteliklerde üçlü işleç ile koşullu CSS sınıfları kullanınız
- Döngülerin çevresinde if/else kullanarak boş dizileri ele alınız
- PHP verilerini
json_encode()aracılığıyla JavaScript'e aktarınız
Sıkça Sorulan Sorular
“PHP Döngüleriyle Dinamik HTML” dersi ücretsiz mi?
Evet — “PHP Döngüleriyle Dinamik HTML” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve PHP Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. PHP Academy kursu toplamda 4 dersten oluşur.
“PHP Döngüleriyle Dinamik HTML” dersinde ne öğreneceğim?
Şablonların içinde PHP dizilerinden HTML tabloları ve listeleri oluşturun. PHP Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
PHP Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te PHP Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“PHP Döngüleriyle Dinamik HTML” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu PHP Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her PHP Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- PHP Etiketleri ve Gömme Söz Dizimi
- PHP Döngüleriyle Dinamik HTML
- Dosyaları Dahil Etme ve Zorunlu Kılma
- Şablon Deseni: Mantığı Görünümden Ayırma