السلام عليكم

كنت انتقطعت عن الدروس لفترة لاني كنت مشغول


اولا التعريف

header ليس المقصود منه اعلي الصفحة من الموقع في التصميم .

عندما تفتح صفحة في موقع ما يرسل المتصفح request (طلب) يشبه هذا

Accept:*/*
Accept-Encoding:gzip,deflate,sdch
Accept-Language:ar,en-US;q=0.8,en;q=0.6
Cache-Control:no-cache
Connection:keep-alive
User-Agent:Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36
#هذا المثال من متصفح كروم

سيقوم السيرفر بالرد ب response (الاستجابة) ومحتوي الصفحة . حقول response و request تسمي header هذا انواع الحقول http://en.wikipedia.org/wiki/List_of_HTTP_header_fields#Request_fields تستخدم مثلا لاخبار المتصفح نوع الصفحة اذا كانت html والترميز utf-8

Content-Type : text/html; charset=utf-8

دالة getallheaders

تستخدم هذه الدالة لجلب ال request header من المتصفح وتخرج مصفوفة مثال

print_R(getallheaders());

سيكون لديك صفحة تشبه هذه

Array
(
    [Host] => localhost
    [Connection] => keep-alive
    [Accept] => text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
    [User-Agent] => Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36
    [Accept-Encoding] => gzip,deflate,sdch
    [Accept-Language] => ar,en-US;q=0.8,en;q=0.6
)

مثال اخر

اخراج ال User-Agent (تستخدم لمعرفة نوع المتصفح)

$r = getallheaders();
echo $r["User-Agent"];

دالة header

تستخدم لاارسال رد للمتصفح مثال

<?php
   header("Content-Type:text/json;charset=utf-8");
?>
<b>انظر كود html موجود !</b>

هل لاحظت ان الظاهر لك

<b>انظر كود html موجود !</b>

اكواد html ظهرت لانك ارسلت ان نوع الصفحة json لمعرفة المزيد عن mime type http://webdesign.about.com/od/multimedia/a/mime-types-by-file-extension.htm

الي الان انتهي الدرس وساكمله في ان شاء الله في الدرس القادم ساشرح curl

تطبيق علي الدرس انشاء دالة تعرف اسم واصدار المتصفح

مساعدة يمكنك الاطلاع علي هذه الصفحة [1] لمعرفة اسام user-agent لكل متصفح

[1] http://www.useragentstring.com/pages/Browserlist/