آموزش برنامه نویسی PHP-جلسه هفتم

آموزش برنامه نویسی PHP-جلسه هفتم

یک تعداد از متغیرهای تعریف شده در php وجود دارد که می توان با استفاده از آنها کارهایی را روی متغیرها انجام داد. به این متدهای آماده superglobals می گوییم.

PHP Global Variables – Superglobals

متغیرهای سوپرگلوبال از قرار زیر هستند :

  • $GLOBALS
  • $_SERVER
  • $_REQUEST
  • $_POST
  • $_GET
  • $_FILES
  • $_ENV
  • $_COOKIE
  • $_SESSION

که در ادامه به ترتیب آنها را بررسی خواهیم کرد.

پیشنهاد ویژه: آموزش رایگان PHP

$GLOBALS

متغیر سراسری همانطور که از اسمش مشخص است محدود به یک تابع نیست و خارج از تابع نیز کارایی دارد. متغیر می تواند داخل تابع نوشته شود و در همان تابع کاربرد داشته باشد و یا سراسری باشد یعنی خارج از تابع نیز اثر گذار باشد. در مثال زیر کاربرد $GLOBALS را می‌بینیم:

<?php
$x = 75;
$y = 25;

function addition() {
$x = 5;
$y = 2;
 $GLOBALS[‘z’] = $GLOBALS[‘x’] + $GLOBALS[‘y’];
}

addition();
echo $z;
?>

در مثال بالا نتیجه 100 است چون متغیر  $GLOBALS سراسری است، متغیر های داخل تابع را در نظر نمی‌گیرد. پس زمانی که متغیر مد نظر ما متغیر سراسری باشد و نخواهیم متغیرهای محلی تاثیر گذار در نتیجه باشد از این متغیر آماده استفاده می‌کنیم.

$_SERVER

با این متد می توانیم به یک صفحه از صفحات php دسترسی داشته باشیم. این متد شامل زیر مجموعه های زیادی است که برای دسترسی به اطلاعات مختلف مورد استفاده قرار می‌گیرد. در ادامه جزئیات این متد را بررسی می کنیم:

$_SERVER[‘PHP SELF’]

نام فایل اسکریپت در حال اجرا را برمی‌گرداند.

$_SERVER[‘GATEWAY_INTERFACE’]

نسخه معمول گذرگاه رابط (CGI) سرور استفاده شده را برمی‌گرداند.

$_SERVER[‘SERVER_ADDR’]

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

$_SERVER[‘SERVER_NAME’]

نام سرور میزبان (مانند www.w3schools.com) را برمی گرداند.

$_SERVER[‘SERVER_SOFTWARE’]

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

$_SERVER[‘SERVER_PROTOCOL’]

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

$_SERVER[‘REQUEST_METHOD’]

روش درخواست استفاده شده برای دسترسی به صفحه (مانند POST) را برمی گرداند.

$_SERVER[‘REQUEST_TIME’]

زمان شروع درخواست را با توجه به زمان مبدا (1/1/1970) طبق ثانیه برمی‌گرداند.

$_SERVER[‘QUERY_STRING’]

اگر به صفحه از طریق رشته پرس و جو دسترسی داشته باشید، رشته پرس و جو را برمی‌گرداند.

$_SERVER[‘HTTP_ACCEPT’]

هدر قبولی از درخواست فعلی را برمی‌گرداند.

$_SERVER[‘HTTP_ACCEPT_CHARSET’]

هدر Accept_Charset را از درخواست فعلی برمی‌گرداند (مانند utf-8، ISO-8859-1)

$_SERVER[‘HTTP_HOST’]

هدر Host را از درخواست فعلی برمی‌گرداند.

$_SERVER[‘HTTP_REFERER’]

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

$_SERVER[‘HTTPS’]

بررسی می‌کند که  آیا اسکریپت از طریق یک پروتکل HTTP امن درخواست شده است.

$_SERVER[‘REMOTE_ADDR]

آدرس IP را از جایی که کاربر صفحه فعلی را مشاهده می کند، برمی گرداند

$_SERVER[‘REMOTE_HOST’]

نام میزبان را از جایی که کاربر صفحه فعلی را مشاهده می کند، برمی گرداند.

$_SERVER[‘REMOTE_PORT’]

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

$_SERVER[‘SCRIPT_FILENAME’]

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

$_SERVER[‘SERVER_ADMIN’]

مقدار داده شده به دستور SERVER_ADMIN را در فایل پیکربندی وب سرور برمی‌گرداند (اگر اسکریپت شما روی یک میزبان مجازی اجرا شود، مقدار تعریف شده برای آن میزبان مجازی خواهد بود) (مانند [email protected])

$_SERVER[‘SERVER_PORT’]

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

$_SERVER[‘SERVER_SIGNATURE’]

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

$_SERVER[‘PATH_TRANSLATED’]

مسیر مبتنی بر سیستم فایل را به اسکریپت فعلی برمی‌گرداند.

$_SERVER[‘SCRIPT_NAME’]

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

$_SERVER[‘SCRIPT_URI’]

URI صفحه فعلی را برمی گرداند.

PHP $_REQUEST

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

متد post یا متد get .

<html>
<body>
<form method=”post” action=”<?php echo $_SERVER[‘PHP_SELF’];?>”>
 Name: <input type=”text” name=”fname”>
 <input type=”submit”>
</form>
<?php
if ($_SERVER[“REQUEST_METHOD”] == “POST”) {
 // collect value of input field
 $name = $_REQUEST[‘fname’];
 if (empty($name)) {
   echo “Name is empty”;
 } else {
   echo $name;
 }
}
?>
</body>
</html>
اشتراک گذاری :
مریم گوهرزاد
نویسنده

مریم گوهرزاد

مدرس و بنیانگذار هلدینگ آرتا رسانه. برنامه نویس و محقق حوزه بلاکچین و توسعه‌دهنده بلاکچین | متخصص Solidity | توسعه‌دهنده وب Full-Stackمن یک توسعه‌دهنده علاقه‌مند به فناوری‌های بلاکچین و وب ۳ هستم و در زمینه Solidity، توسعه قراردادهای هوشمند و ساخت برنامه‌های غیرمتمرکز (DApps) فعالیت می‌کنم. تمرکز من بر طراحی و پیاده‌سازی راهکارهایی است که در کنار بهره‌گیری از فناوری‌های نوین، عملکرد مناسب، امنیت و تجربه کاربری مطلوبی ارائه دهند.در مسیر حرفه‌ای خود، تجربه کار با قراردادهای هوشمند و معماری راهکارهای مبتنی بر بلاکچین را به دست آورده‌ام و همواره تلاش می‌کنم دانش خود را با آخرین تغییرات و پیشرفت‌های این حوزه به‌روز نگه دارم. برای من، بلاکچین تنها یک فناوری جدید نیست؛ بلکه بستری برای ایجاد راهکارهای متفاوت و کاربردی در دنیای واقعی است.در کنار تخصص در حوزه بلاکچین، به عنوان یک توسعه‌دهنده وب Full-Stack نیز در طراحی و توسعه وب‌سایت‌ها و برنامه‌های تحت وب فعالیت می‌کنم. تجربه کار در بخش‌های Front-End و Back-End به من این امکان را داده است که پروژه‌ها را از مرحله ایده و طراحی تا توسعه و اجرا، با دیدی جامع دنبال کنم. در فرآیند توسعه، توجه ویژه‌ای به کدنویسی تمیز، معماری مناسب، طراحی واکنش‌گرا، عملکرد مطلوب و تجربه کاربری روان دارم.همیشه به دنبال یادگیری، تجربه فناوری‌های جدید و پیدا کردن راه‌های بهتر برای حل مسائل فنی هستم. از مواجهه با چالش‌های پیچیده استقبال می‌کنم و معتقدم بهترین نتایج زمانی شکل می‌گیرند که دانش فنی، خلاقیت و همکاری مؤثر در کنار یکدیگر قرار بگیرند.اگر به دنبال همکاری در یک پروژه بلاکچینی، Web3 یا توسعه وب هستید، خوشحال می‌شوم با یکدیگر در ارتباط باشیم و ایده‌ها را به راهکارهای واقعی و قابل اجرا تبدیل کنیم.

TEST_VALUE_123
https://t.me/artarasaneh
tel:09193426251
https://wa.me/+989193426251
https://instagram.com/artarasaneh_com