دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۷
  • تیر

جلسه ۱۷ : آموزش متغیرهای گلوبال در php 7

  • دسته‌بندی‌ها :
جلسه ۱۷ : آموزش متغیرهای گلوبال در php 7
    • جزئیات
    • نوع محتواآموزشی

      مقدمه

      با عرض سلام و وقت به خیر خدمت کاربران سایت پی وی لرن و کاربرانی که دوره ی آموزش php 7 را دنبال می کنند.
      در جلسه گذشته آموختیم که چگونه می توان آرایه ها را در php 7 مرتب کرد و چندین تابع برای مرتب سازی آرایه ها نیز معرفی شده و کار با آن ها نیز آموزش داده شد. در ادامه این دوره آموزش متغیرهای گلوبال در php 7 را به علاقمندان این دوره ارائه می نماییم.

      آموزش متغیرهای گلوبال در php 7

      سوپر گلوبال ها از نسخه ۴٫۱٫۰ PHP معرفی شدند و به عنوان متغیرهای  built-in در PHP تعریف شده و همیشه در تمامی حوزه های دسترسی به متغیر می توان به آنها دسترسی داشت.

      متغیرهای گلوبال PHP – سوپر گلوبال ها

      چندین متغیر از پیش تعریف شده در PHP وجود دارد که سوپرگلوبال (Superglobals) هستند، بدین معنی که همیشه و از همه جا، صرفنظر از حوزه تعریف آنها در دسترس هستند و می توانید از داخل تابع، کلاس یا فایل بدون هیچ کار خاصی به آنها دسترسی داشته باشید.

      در آموزش متغیرهای گلوبال در php 7 متغیرهای سوپر گلوبال زیر را معرفی و بررسی می نماییم.

      • GLOBALS_$
      • SERVER_$
      • REQUEST_$
      • POST_$
      • GET_$
      • FILES_$
      • ENV_$
      • COOKIE_$
      • SESSION_$

      در ادامه به معرفی و بررسی بعضی از این متغیرها می پردازیم.

      متغیر سوپر گلوبال GLOBALS$ در PHP

      GLOBALS$ یکی از سوپر گلوبال های PHP است که برای دسترسی به متغیرهای گلوبال یا عمومی از هر جایی در اسکریپت PHP (و همچنین داخل توابع یا متدها) استفاده می شود.

      تمامی متغیرهای عمومی PHP در یک آرایه بنام [GLOBALS [index$ ذخیره می شوند.
      ایندکس نام متغیرها را نگه می دارد. مثال زیر طریقه استفاده از متغیر سوپر گلوبال GLOBALS$ را نشان می دهد :

      مثال : 

      در مثال بالا، از آنجایی که z متغیری است که در آرایه GLOBALS$ حضور دارد، از خارج تابع نیز قابل دسترسی است!

      متغیر سوپرگلوبال PHP $_SERVER

      SERVER_$ یک متغیر سوپر گلوبال PHP است که اطلاعات مربوط به هدرها، مسیرها و محل قرارگیری اسکریپت را در خود ذخیره می کند.
      در مثال زیر نشان می دهد که چگونه از عناصر موجود در SERVER_$ استفاده کنیم :

      مثال : 

      در جدول زیر مهمترین عناصری که در می توان در SERVER_$ ذخیره کرد، لیست شده است :

      عنصر / کدشرح
      نام فایل اسکریپتی که در حال اجرا است را بر می گرداند

      $_SERVER[‘PHP_SELF’]

      نسخه (CGI) مورد استفاده سرور را بر می گرداند

      $_SERVER[‘GATEWAY_INTERFACE’]

      آدرس IP سرور میزبان را بر می گرداند

      $_SERVER[‘SERVER_ADDR’]

      نام هاست سرور را بر می گرداند (از قبیل: https://parastar.info/)

      $_SERVER[‘SERVER_NAME’]

      رشته شناسایی سرور را بر می گرداند (از قبیل: Apache/2.2.24)

      $_SERVER[‘SERVER_SOFTWARE’]

      نام و نسخه پروتکل اطلاعات را بر می گرداند (برای نمونه: HTTP/1.1)

      $_SERVER[‘SERVER_PROTOCOL’]

      متد درخواست مورد استفاده برای دسترسی به صفحه را بر می گرداند (از قبیل متد POST)

      $_SERVER[‘REQUEST_METHOD’]

      تایم استمپ شروع درخواست را بر می گرداند (برای مثال ۱۳۷۷۶۸۷۴۹۶)

      $_SERVER[‘REQUEST_TIME’]

      رشته کوئری را بر می گرداند اگر دسترسی به صفحه از طریق رشته کوئری (query string) باشد.

      $_SERVER[‘QUERY_STRING’]

      هدر پذیرش درخواست جاری را بر می گرداند

      $_SERVER[‘HTTP_ACCEPT’]

      هدر مجموعه کارکتر پذیرش (Accept_Charset) درخواست جاری را بر می گرداند (برای مثال utf-8,ISO-8859-1)

      $_SERVER[‘HTTP_ACCEPT_CHARSET’]

      هدر هاست درخواست جاری را بر می گرداند

      $_SERVER[‘HTTP_HOST’]

      آدرس URL کامل صفحه جاری را بر می گرداند (معتبر نیست زیرا همه عوامل کاربر از آن پشتیبانی نمی کنند)

      $_SERVER[‘HTTP_REFERER’]

      آیا اسکریپت از طریق پروتوکل HTTP ایمن کوئری می شود

      $_SERVER[‘HTTPS’]

      آدرس آی پی جایی که کاربر مشغول مشاهده صفحه جاری است را بر می گرداند

      $_SERVER[‘REMOTE_ADDR’]

      نام میزبان جایی که کاربر از آن صفحه جاری را مشاهده می کند را بر می گرداند

      $_SERVER[‘REMOTE_HOST’]

      پورت مورد استفاده در ماشین کاربر که با وب سرور صفحه در ارتباط است را بر می گرداند.

      $_SERVER[‘REMOTE_PORT’]

      نام مسیر قطعی اسکریپت در حال اجرا را بر می گرداند.

      $_SERVER[‘SCRIPT_FILENAME’]

      مقدار داده شده به دایرکتیو SERVER_ADMIN در فایل تنظیمات سرور را بر می گرداند (اگر اسکریپت شما در حال اجرا بر هاست مجازی باشد، این مقداری خواهد بود که برای هاست مجازی تعریف شده است (از قبیل www.pvlearn.com)

      $_SERVER[‘SERVER_ADMIN’]

      پورت مورد استفاده ماشین سرور که وب سرور برای ارتباط استفاده می کند (مثل پورت ۸۰) را بر می گرداند.

      $_SERVER[‘SERVER_PORT’]

      نسخه سرور و نام هاست مجازی که به صفحات تولید شده توسط سرور اضافه می شود را بر می گرداند.

      $_SERVER[‘SERVER_SIGNATURE’]

      فایل سیستمی که مسیر اسکریپت جاری را بر می گرداند

      $_SERVER[‘PATH_TRANSLATED’]

      مسیر اسکریپت جاری را بر می گرداند

      $_SERVER[‘SCRIPT_NAME’]

      URI صفحه جاری را بر می گرداند

      $_SERVER[‘SCRIPT_URI’]

      آموزش متغیرهای گلوبال در php 7 را با متغیر سوپرگلوبال REQUEST_$ می پردازیم.

      متغیر سوپرگلوبال REQUEST_$

      متغیر سوپرگلوبال REQUEST_$ در PHP برای جمع آوری داده ها پس از ارسال فرم HTML استفاده می شود.

      در مثال زیر فرمی با یک فیلد ورودی و یک دکمه ارسال (سابمیت) نمایش داده می شود.
      وقتی کاربر با کلیک دکمه ارسال داده ها را ارسال می کند، داده های فرم به فایل خاصی ارسال می شود که در خصیصه action تگ form مشخص شده است.
      در این مثال، ما به خود این فایل برای پردازش داده های فرم اشاره می کنیم.
      اگر می خواهید از فایل PHP دیگری برای پردازش اطلاعات فرم استفاده کنید، آن را با نام فایل انتخابی خود تعویض کنید.
      سپس می توانیم از متغیر سوپرگلوبال REQUEST_$ برای جمع آوری مقدار وارد شده در فیلد استفاده کنیم.

      مثال : 

      متغیر سوپر گلوبال $_POST

      متغیر سوپر گلوبال POST_$ در PHP به طور وسیعی برای جمع آوری داده ها پس از submit شدن فرم HTML با متد پست (“method=”post) استفاده می شود.
      متغیر POST>_$ همچنین به طور وسیعی برای ارجاع متغیر استفاده می شود.

      در مثال زیر فرمی با یک فیلد ورودی و یک دکمه submit نشان داده می شود.
      وقتی کاربر با زدن دکمه submit داده ها را ارسال می کند، داده های فرم به فایل مشخص شده در خصیصه action تگ از <form> ارسال می شود.
      در این مثال به خود فرم برای پردازش داده های فرم اشاره شده است.
      اگر بخواهید از فایل PHP مجزا برای پردازش اطلاعات فرم استفاده کنید، کافی است نام فایل خود را در خصیصه action قرار دهید.
      سپس ما از متغیر سوپر گلوبال POST_$ برای جمع آوری داده های فرم استفاده کرده ایم.

      مثال : 

      خروجی این کد نیز همانند مثال قبلی است.
      آموزش متغیرهای گلوبال در php 7 را با معرفی و بررسی متغیر سوپر گلوبال GET_$  می پردازیم.

      متغیر سوپر گلوبال GET_$

      متغیر سوپر گلوبال GET_$ در PHP نیز برای جمع آوری داده های submit شده از فرم HTML استفاده می شود که با متد “method=”get ارسال شده باشد.

      متغیر سوپر گلوبال GET_$ می تواند داده های ارسال شده در URL صفحه را نیز جمع آوری و دریافت کند.

      فرض کنید یک صفحه HTML داریم که حاوی یک هایپرلینک با پارامترهای زیر است :

      مثال : 

      زمانی که کاربر روی لینک Test $GET کلیک می کند، پارامترهای “subject” و “web” به فایل “test_get.php ” ارسال می شوند و شما می توانید در فایل “test_get.php” با استفاده از متغیر GET_$ به مقادیر این پارامترها دسترسی داشته باشید.

      در مثال زیر کد فایل test_get.php را مشاهده نمایید :

      مثال : 

      در فصل PHP Forms بیشتر راجع به POST_$ و GET_$ خواهید آموخت.

      کلام آخر

      در این جلسه به صورت مفصل به آموزش متغیرهای گلوبال در php 7 پرداختیم.
      در جلسه بعد فصل تازه ای را در php 7 آغاز می نماییم و به کار با فرم در php 7 می پردازیم.
      با پی وی لرن همراه باشید.

      QR:  جلسه ۱۷ : آموزش متغیرهای گلوبال در php 7
      به اشتراک بگذارید