0Pricing
PHP Academy · Pelajaran

Tag PHP dan Sintaks Penyematan

Gunakan tag pembuka/penutup PHP dan sintaks echo singkat di dalam HTML.

Tag PHP dan Sintaks Penyematan adalah pelajaran PHP Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar PHP Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus PHP Academy mencakup 4 pelajaran total.

Mencampurkan PHP dan HTML

PHP dirancang untuk disisipkan ke dalam berkas HTML. Saat server memproses sebuah .php, semua yang berada di antara tag PHP dijalankan; yang lainnya dikirim ke peramban apa adanya.

Tag PHP Standar

Tag pembuka dan penutup PHP standar:

<!DOCTYPE html>
<html><body>
<?php
    $name = 'Alice';
    echo 'Hello, ' . $name;
?>
<p>This is regular HTML.</p>
<?php
    echo '<p>Back in PHP!</p>';
?>
</body></html>

Tag Echo Singkat

Tag echo singkat menampilkan nilai tanpa perlu menulis kata echo:

<!-- Long form -->
<h1><?php echo $pageTitle; ?></h1>

<!-- Short form (preferred in templates) -->
<h1><?= $pageTitle ?></h1>

<!-- With escaping -->
<h1><?= htmlspecialchars($pageTitle, ENT_QUOTES, 'UTF-8') ?></h1>

Selalu Lakukan Escape pada Output

Jangan pernah menampilkan data yang dikendalikan pengguna tanpa melakukan escape:

<?php
$unsafe = '<script>alert("xss")</script>';
$safe   = htmlspecialchars($unsafe, ENT_QUOTES, 'UTF-8');

// Define a helper:
function e(string $str): string {
    return htmlspecialchars($str, ENT_QUOTES | ENT_HTML5, 'UTF-8');
}
?>

<p><?= e($userInput) ?></p>

PHP dalam Atribut HTML

Sisipkan PHP dalam atribut HTML—selalu lakukan escape:

<?php
$url    = '/profile/' . $user['id'];
$active = $currentPage === 'home' ? 'active' : '';
$count  = 5;
?>

<a href="<?= htmlspecialchars($url) ?>" class="nav-link <?= $active ?>">
    Inbox <span class="badge"><?= $count ?></span>
</a>

Hindari Tag Singkat

Tag pembuka singkat (tanda kurang dari ? tanpa php) TIDAK disarankan—tag ini bergantung pada pengaturan php.ini dan berkonflik dengan XML. Selalu gunakan tag pembuka lengkap atau bentuk echo singkat:

<?php
// These are the safe, portable forms:
// <?php echo $name; ?>    — full form
// <?= $name ?>            — short echo (always enabled 5.4+)

// The short open tag <? is different and unreliable
// Do not use it in code intended for multiple environments.

Kondisional Sebaris dalam Templat

Gunakan ternary sebaris atau penggabungan null secara langsung dalam templat:

<?php
$role = 'admin';
$loggedIn = true;
?>

<nav>
    <?= $loggedIn ? 'Welcome back!' : 'Please log in' ?>
    <?php if ($role === 'admin'): ?>
        <a href="/admin">Admin Panel</a>
    <?php endif; ?>
</nav>

Penyanggaan Output untuk Menangkap Hasil

Tangkap output PHP+HTML ke dalam variabel menggunakan penyanggaan output:

<?php
function renderCard(string $title, string $body): string {
    ob_start();
    ?>
    <div class="card">
        <h2><?= htmlspecialchars($title) ?></h2>
        <p><?= htmlspecialchars($body) ?></p>
    </div>
    <?php
    return ob_get_clean();
}

echo renderCard('PHP', 'A server-side scripting language.');

PHP_EOL untuk Lintas Platform

Gunakan PHP_EOL untuk mengakhiri baris dengan benar di platform apa pun:

<?php
$lines = ['Line 1', 'Line 2', 'Line 3'];
$content = implode(PHP_EOL, $lines);
file_put_contents('output.txt', $content);

// PHP_EOL = "\n" on Linux/Mac, "\r\n" on Windows
echo PHP_EOL === "\n" ? 'Unix line ending' : 'Windows line ending';

Menghilangkan Tag Penutup

Praktik terbaik: hilangkan tag penutup PHP di akhir berkas yang hanya berisi PHP. Ini mencegah spasi kosong yang tidak disengaja dikirim sebelum header:

<?php
// config.php — PHP only, no closing tag needed
defined('APP_KEY') or define('APP_KEY', 'secret123');
define('DB_HOST', 'localhost');
define('DB_NAME', 'myapp');

// No closing PHP tag here — prevents header issues

Beberapa Blok PHP

Sebuah berkas dapat memiliki beberapa blok PHP yang diselingi HTML:

<?php
$items = ['Apple', 'Banana', 'Cherry'];
$count = count($items);
?>

<h2>Shopping List (<?= $count ?> items)</h2>
<ul>
<?php foreach ($items as $item): ?>
    <li><?= htmlspecialchars($item) ?></li>
<?php endforeach; ?>
</ul>

Pemeriksaan Singkat

Sintaks output PHP apa yang disarankan untuk meng-echo variabel dalam templat HTML?

Rangkuman: Tag dan Penyisipan PHP

Poin-poin utama:

  • Gunakan <?php ?> untuk blok kode, <?= ?> untuk output
  • Selalu lakukan escape pada output dengan htmlspecialchars()
  • Hilangkan tag penutup di akhir berkas yang hanya berisi PHP
  • Gunakan penyanggaan output untuk menangkap HTML yang dirender
  • Gunakan PHP_EOL untuk pengakhiran baris yang portabel

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Tag PHP dan Sintaks Penyematan” gratis?

Ya — teks lengkap “Tag PHP dan Sintaks Penyematan” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus PHP Academy, upgrade ke CoddyKit PRO. Kursus PHP Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Tag PHP dan Sintaks Penyematan”?

Gunakan tag pembuka/penutup PHP dan sintaks echo singkat di dalam HTML. Kamu berlatih PHP Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai PHP Academy?

Tidak diperlukan pengalaman sebelumnya. PHP Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.

Berapa lama pelajaran “Tag PHP dan Sintaks Penyematan” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran PHP Academy ini?

Ya. Setiap pelajaran PHP Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Tag PHP dan Sintaks Penyematan
  2. HTML Dinamis dengan Perulangan PHP
  3. Menyertakan dan Memerlukan File
  4. Pola Templat: Memisahkan Logika dari Tampilan
← Kembali ke PHP Academy