Avatar ·

لماذا يُوصى بحذف علامة الإغلاق `?>` في نهاية ملف PHP؟

مرحباً بالجميع! أنا مطور PHP مبتدئ ولاحظت مؤخراً أن العديد من الأطر الحديثة (Laravel, Symfony) والوثائق غالباً ما تذكر أن علامة الإغلاق `?>` في نهاية ملف PHP يجب حذفها. بصراحة، لا أفهم تماماً لماذا يجب فعل ذلك. ففي الكتب التعليمية لـ PHP دائماً ما تظهر البنية الكاملة:\n\n```php\n\n```\n\nحاولت إزالة `?>` في مشروعي، والكود استمر في العمل. لكن السؤال الذي يقلقني: ما الذي يمكن أن يحدث خطأ إذا تركت علامة الإغلاق؟ يبدو أنه لا يحدث شيء سيء. ربما يكون مجرد نزوة من المطورين ذوي الخبرة؟\n\nلكنني قرأت مؤخراً أن هذا مرتبط بالأمان و HTTP headers. يُزعم أنه بسبب مسافة عشوائية أو سطر جديد بعد `?>` يمكن الحصول على خطأ "headers already sent".