موضوعات پیشرفته · ۸ دقیقه مطالعه

JSON و استثناها

JSON

برای تبادل داده با فرانت‌اند و APIها:

$data = ["name" => "آرنا", "level" => 5];
$json = json_encode($data, JSON_UNESCAPED_UNICODE);  // برای فارسی
// {"name":"آرنا","level":5}

$back = json_decode($json, true);   // true = آرایهٔ انجمنی
echo $back["name"];

JSON_UNESCAPED_UNICODE را برای فارسی حتماً بگذار، وگرنه حروف به کد تبدیل می‌شوند.

خروجی JSON از یک API ساده

header("Content-Type: application/json");
echo json_encode(["ok" => true, "data" => $items]);

استثناها (Exceptions)

try {
    if ($x < 0) {
        throw new InvalidArgumentException("مقدار منفی");
    }
    riskyOperation();
} catch (Exception $e) {
    echo "خطا: " . $e->getMessage();
} finally {
    cleanup();   // همیشه اجرا می‌شود
}

استثنای سفارشی

class PaymentException extends Exception {}
throw new PaymentException("پرداخت ناموفق");

⚠️ پیام خطای فنی را به کاربر نشان نده (ممکن است اطلاعات حساس لو دهد)؛ آن را لاگ کن و پیام عمومی بده.

برای ثبت پیشرفت و کسب XP وارد شو.

ورود به میدان
→ کوکی و نشست (Session)