آموزش رایگان php
جلسه هفدهم

متغیرهای فوق سراسری در PHP 5

متغیرهای سراسری – فوق سراسری در PHP 5 : در جلسات قبلی در مورد میدان دید متغیرها صحبت کردیم. در این جلسه قصد داریم به بررسی متغیرهای با میدان دید فوق سراسری با جزئیات بیشتری صحبت کنیم. متغیرهای با میدان دید فوق سراری در پی اچ پی ۴٫۱٫۰ معرفی شدند. این نوع از متغیرها در […]

متغیرهای سراسری – فوق سراسری در PHP 5 :

در جلسات قبلی در مورد میدان دید متغیرها صحبت کردیم. در این جلسه قصد داریم به بررسی متغیرهای با میدان دید فوق سراسری با جزئیات بیشتری صحبت کنیم.

متغیرهای با میدان دید فوق سراری در پی اچ پی ۴٫۱٫۰ معرفی شدند. این نوع از متغیرها در سرتاسر کد در دسترس هستند.

متغیرهای سراسری – فوق سراسری در PHP :

در PHP تعدادی متغیر از پیش تعریف شده وجود دارد که دارای میدان دید فوق سراسری (superglobals) هستند. این به این معناست که این متغیرها در سرتاسر برنامه در دسترس هستند _ درون توابع ، کلاس ها و فایل ها و بدون نیاز به انجام کاری خاص !

در زیر لیست متغیرهای فوق سراسری را مشاهده می کنید:

در این بخش به توضیح تعدادی از این متغیرها می پردازیم و توضیح مابقی را به بخش های بعد موکول می کنیم:

PHP $GLOBALS

$GLOBALS یک متغیر فوق سراسری در PHP است که این امکان را برای ما فراهم می کند که به متغیرهای سراسری (global) در سرتاسر کد (حتی داخل توابع و متدها) دسترسی داشته باشیم.

PHP تمامی متغیرهای سراسری را درون آرایه ای با نام $GLOBALS[index] ذخیره می کند که index نام متغیر مورد نظر را نشان میدهد.

مثال زیر نحوه ی استفاده از متغیر $GLOBALS را نشان میدهد:

در مثال فوق متغیر z در متغیر $GLOBAL تعریف شده و در خارج از تابع در دسترس است!

PHP $_SERVER

$_SERVER یک متغیر با میدان فوق سراسری در PHP است که اطلاعاتی در مورد هدرها ، مسیرها و محل برنامه در اختیار ما قرار میدهد.

مثال زیر نحوه ی استفاده از این آرایه را نشان میدهد:

جدول زیر تعدادی از مهم ترین اعضای این آرایه را معرفی می کند:

توضیحاتعضو آرایه
Returns the filename of the currently executing script$_SERVER['PHP_SELF']
Returns the version of the Common Gateway Interface (CGI) the server is using$_SERVER['GATEWAY_INTERFACE']
Returns the IP address of the host server$_SERVER['SERVER_ADDR']
Returns the name of the host server (such as www.web-negar.com)$_SERVER['SERVER_NAME']
Returns the server identification string (such as Apache/2.2.24)$_SERVER['SERVER_SOFTWARE']
Returns the name and revision of the information protocol (such as HTTP/1.1$_SERVER['SERVER_PROTOCOL']
Returns the request method used to access the page (such as POST)$_SERVER['REQUEST_METHOD']
Returns the timestamp of the start of the request (such as 1377687496)$_SERVER['REQUEST_TIME']
Returns the query string if the page is accessed via a query string$_SERVER['QUERY_STRING']
Returns the Accept header from the current request$_SERVER['HTTP_ACCEPT']
Returns the Accept_Charset header from the current request (such as utf-8,ISO-8859-1)$_SERVER['HTTP_ACCEPT_CHARSET']
Returns the Host header from the current request $_SERVER['HTTP_HOST']
Returns the complete URL of the current page (not reliable because not all user-agents support it)$_SERVER['HTTP_REFERER']
Is the script queried through a secure HTTP protocol$_SERVER['HTTPS']
Returns the IP address from where the user is viewing the current page$_SERVER['REMOTE_ADDR']
Returns the Host name from where the user is viewing the current page$_SERVER['REMOTE_HOST']
Returns the port being used on the user's machine to communicate with the web server$_SERVER['REMOTE_PORT']
Returns the absolute pathname of the currently executing script$_SERVER['SCRIPT_FILENAME']
Returns the value given to the SERVER_ADMIN directive in the web server configuration file (if your script runs on a virtual host, it will be the value defined for that virtual host) (such as someone@web-negar.com)$_SERVER['SERVER_ADMIN']
Returns the port on the server machine being used by the web server for communication (such as 80)$_SERVER['SERVER_PORT']
Returns the server version and virtual host name which are added to server-generated pages$_SERVER['SERVER_SIGNATURE']
Returns the file system based path to the current script$_SERVER['PATH_TRANSLATED']
Returns the path of the current script$_SERVER['SCRIPT_NAME']
Returns the URI of the current page$_SERVER['SCRIPT_URI']

PHP $_REQUEST

آرایه ی $_REQUEST برای جمع آوری اطلاعات ارسال شده توسط فرم های HTML استفاده می شود.

در مثال زیر فرمی با یک ورودی و  یک دکمه ی ارسال قرار دارد. هنگامی که کاربر بر روی دکمه ی ارسال کلیک می کند اطلاعات وارد شده در فرم به آدرسی که درون خصیصه ی action فرم قرار دارد ارسال می شود. در این مثال ما اطلاعات وارد شده را به صفحه ای که این کد در آن در حال اجراست ارسال می کنیم. اگر شما قصد دارید که اطلاعات وارد شده به صفحه ای دیگر ارسال شود مقدار خصیصه ی action را به صفحه ی مورد نظر خود تغییر دهید. حال می توانیم اطلاعات ارسال شده را توسط متغیر $_REQUEST دریافت کنیم و سپس پردازش مورد نظر را بر روی آن ها انجام دهیم.

PHP $_POST

آرایه ی $_POST برای جمع آوری اطلاعات وارد شده درون فرم هایی که از طریق متد post ارسال شده اند استفاده می شود.

در مثال زیر فرمی با یک ورودی و  یک دکمه ی ارسال قرار دارد. هنگامی که کاربر بر روی دکمه ی ارسال کلیک می کند اطلاعات وارد شده در فرم به آدرسی که درون خصیصه ی action فرم قرار دارد ارسال می شود. در این مثال ما اطلاعات وارد شده را به صفحه ای که این کد در آن در حال اجراست ارسال می کنیم. اگر شما قصد دارید که اطلاعات وارد شده به صفحه ای دیگر ارسال شود مقدار خصیصه ی action را به صفحه ی مورد نظر خود تغییر دهید. حال می توانیم اطلاعات ارسال شده را توسط متغیر $_POST دریافت کنیم و سپس پردازش مورد نظر را بر روی آن ها انجام دهیم.

PHP $_GET

آرایه ی $_GET برای جمع آوری اطلاعات وارد شده درون فرم هایی که از طریق متد get ارسال شده اند استفاده می شود.

این آرایه این قابلیت را هم دارد که بتواند که بتواند اطلاعات را از URL هم دریافت کند.

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

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

در بخش های بعد بیشتر با آرایه های $_GET و $_POST آشنا می شویم.

کلیه حقوق مدرسه مجازی وب متعلق به گروه طراحی وب نگار میباشد.کپی برداری تنها با ذکر منبع مجاز میباشد.