آموزش PHP > مقدمه آموزش PHP > متغیرهای سراسری و پیش ساخته
PHP
معرفی متغیرهای سراسری ( Superglobals ) در PHP :
متغیرهای سراسری ( Superglobals ) ، متغیرهای پیش ساخته ای هستند
که از ورژن 4.0.1 به بعد در PHP معرفی شده و در تمام کدهای صفحات PHP قابل دسترسی و
استفاده می باشند .
این متغیرها از پیش تعریف شده اند و شما بدون نیاز به انجام کار خاصی ، می توانید آنها
را در هر تابع ، کلاس و ... به آسانی به کار ببرید .
لیست زیر متغیرهای سراسری و پیش ساخته PHP را شامل می شود . برخی از این متغیرها را
در این درس توضیح داده ایم . بقیه آنها در سایر بخش ها معرفی شده اند :
- $GLOBALS
- $_SERVER
- $_REQUEST
- $_POST
- $_GET
- $_FILES
- $_ENV
- $_COOKIE
- $_SESSION
متغیر سراسری GLOBAL$ :
از این متغیر سراسری ، برای تعریف متغیرهایی که با یک نام یا اندیس خاص مشخص شده و
در تمام کدهای صفحه قابل دسترسی هستند ، استفاده می شود .
زبان PHP ، کلیه متغیرهای GLOBAL تعریف شده را در یک متغیر آرایه ای به صورت [GLOBAL[index$
نگهداری می کند که در آن index ، نام متغیر مورد نظر است .
مثال عملی زیر نحوه استفاده از متغیر سراسری GLOBAL$ را در یک کد PHP نشان می دهد .
توضیح کد : از آنجایی که متغیر z ، توسط متغیر سراسری GLOBAL$ تعریف
شده ، در خارج از کد تابع مثال نیز ، قابل دسترسی است .
< ? php
$x = 75;
$y = 25;
function addition()
{
$GLOBALS['z']
= $GLOBALS['x'] + $GLOBALS['y'];
}
addition();
echo $z;
? >
|
متغیر سراسری REQUEST_$ :
متغیر سراسری REQUEST_$ ، برای جمع آوری اطلاعات ارسال شده پس از submit ،
فرم های HTML در صفحه استفاده می شود .
برای درک بهتر به مثال زیر دقت کنید . مثال زیر کد یک فرم HTML است که دارای یک کنترل
input برای دریافت نام و یک دکمه فرمان برای Submit ( ارسال فرم ) صفحه است . اطلاعات
فرم پس از کلیک کاربر بر روی دکمه فرمان Submit به آدرس صفحه تعیین شده در خاصیت action
تگ <form> ارسال می شود .
در مثال زیر ، ما مقدار خاصیت action فرم را خالی گذاشته ایم تا اطلاعات فرم برای پردازش
، مجددا به خود صفحه باز گردد . اما می توانید آدرس هر فایل دیگر PHP که مورد نظرتان
استت را برای پردازش اطلاعات فرم ، درون خاصیت تعریف کنید . پس از ارسال اطلاعات فرم
به صفحه ، از یک متغیر سراسری REQUEST_$ ، یرای جمع آوری اطلاعات ارسال شده از فرم
که در این مثال نام است ، استفاده می شود .
<html>
<body>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
Name: <input type="text" name="fname">
<input type="submit">
</form>
<?php
$name = $_REQUEST['fname'];
echo $name;
?>
</body>
</html>
|
متغیر سراسری POST_$ :
متغیر سراسری POST_$ در PHP برای دو منظور کلی استفاده می شود :
- جمع آوری اطلاعات در فرم های HTML که مقدار خاصیت متد آنها بر روی POST تنظیم شده ،
پس از Submit در صفحه .
- ارسال مقادیر فرم های HTML به صفحات دیگر .
مثال زیر همانند مثال قبل یک فرم HTML را نشان می دهد که دارای یک فیلد برای ورود نام
و یک دکمه فرمان برای Submit صفحه است . با این تفاوت که مقدار متد ارسال اطلاعات آن
بر روی POST تنظیم شده است . همچنین اطلاعات فرم توسط خاصیت action به خود صفحه مجددا
ارسال شده تا پردازش شود .
یک متغیر سراسری POST_$ به نام fname نیز برای جمع آوری مقدار ارسال شده توسط فرم است
.
<html>
<body>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
Name: <input type="text" name="fname">
<input type="submit">
</form>
<?php
$name = $_POST['fname'];
echo $name;
?>
</body>
</html>
|
متغیر سراسری GET_$ :
از متغیر سراسری GET_$ برای جمع آوری و دریافت اطلاعات ارسالی توسط متد GET پس از Submit
یک یک فرم HTML در صفحه
استفاده می شود .
از این متغیر برای همچنین می توانید برای خواندن و دریافت اطلاعاتی که به دنبال آدرس
صفحه ارسال می شوند ، استفاده کنید . برای این منظور به مثال زیر دقت نمایید .
مثال عملی : فرض کنید که یک لینک با کد زیر در صفحه داریم :
<html>
<body>
<a href="test.php?subject=PHP&web=Developer1.ir">Test $GET</a>
</body>
</html>
|
پس از اینکه کاربر بر روی لینک کلیک نماید ، به صفحه Test.php رفته و همچنین اطلاعات
subject = PHP و web = Developer1.ir به صفحه ارسال می شوند . به وسیله کد زیر در صفحه
Test.php کد صفحه مقصد است ، می توانید برای دریافت اطلاعات ارسالی استفاده نمایید
.
<html>
<body>
<?
php echo "Study " . $_GET['subject'] . " at " . $_GET['web'];
?>
</html>
|
راجع این مطلب
سوال یا اشکالی دارید ؟! آن را در انجمن سایت مطرح نمایید ...
>>>>> ورود به انجمن تخصصی
نطر خودتان درباره این صفحه :