متغیرها و آرایه های فوق سراسری (super globals)

دسته بندی: آموزش
زمان مطالعه: 1 دقیقه
۱۳ مرداد ۱۳۹۳

در جلسه نهم آموزش PHP به معرفی آرایه های فوق سراسری در زبان PHP و کاربردهای آنها می پردازیم . با ما همراه باشید .

در این جلسه موارد زیر مطرح خواهند شد :

فصل 9 : آرايه هاي سوپرگلوبال PHP و کاربرد آنها

  • منظور از آرايه هاي SuperGlobal چيست؟
  • انواع آرايه ها فوق سراسري و کاربرد آنها در زبان PHP
  • آرايه ي $_GET
  • آرايه ي $_POST
  • آرايه ي $_REQUEST
  • آرايه ي $_FILE
  • آرايه ي $_SERVER
  • آرايه ي $GLOBALS
  • نحوه ي دريافت و پردازش اطلاعات ارسال شده از طريق فرم ها در زبان PHP
  • اعتبارسنجي ورودي هاي کاربر و رفع خطرات احتمالي از ورودي هاي خطرناک در PHP
  • جلوگيري از ارسال مجدد فرم ها و مشکل ذخيره سازي و پردازش مجدد داده ها
  • ميني پروژه : نمايش اطلاعات ارسال شده از طريق فرم ثبت نام با ظاهري مرتب
  • تمرين
:: توجه

این مطلب یک جلسه از آموزش PHP رایگان می باشد و برای مشاهده آن باید در دوره ثبت نام کنید.

ثبت نام در آموزش PHP رایگان

نویسنده
بیش از 15 سال هست که برنامه نویسی می کنم و از بین همه زبون هایی که کار کردم جاوا، اسمبلی و php رو دوست دارم. دانشجوی دکترای نرم افزارم و توی دانشگاه روی پردازش بیگ دیتا و پردازش موازی کار کردم و عاشق چالش از هر نوعیش هستم! سون لرن مثل بچه منه که 12 سال براش وقت گذاشتم، اینجا همه تلاش می کنیم از شروع یادگیری تا ورود به بازر کار حوزه برنامه نویسی و IT همراهتون باشیم.

جلسات دوره

نظرات کاربران

فرزانه

سلام آقای آوند
ممکنه راهنمایی کنید و تفاوت این دو خط کد رو توضیح بدید؟
!توی ویدیوی آموزشی برای هر کدوم فرمودید با این کد “آدرس جدید” رو وارد میکنیم. اما من گیج شدم و تفاوتشون رو متوجه نمیشم.
از راهنمایی های همیشگی شما سپاسگزارم

$uploadDir = __DIR__ . ‘/files/’;
$uploadFilePath = $uploadDir . $_FILES[‘userfile’][‘name’];
sadra hakim

سلام استاد
من نفهمیدم این متغیری که تعریف کردید برای چیه و برای چی تعریف کردید ؟ میشه کمی در موردش توضیح بدید

 $uploadFilePath = $uploadDir . rand(100,999) . ‘-‘ . $_FILES[‘userfile’][‘name’];
sadra hakim

بله اون قسمت رندومش رو فهمیدم اما نفهمیدم این متغیر کجای داستانه آپلوده. این الان داره آدرس فولدر files رو مشخص میکنه ؟ یا آدرس همون فایل آپلودی رو ؟ این رو نفهمیدم

مصطفی قدیمی

سلام وقت بخیر
این متغیر ایجاد شده تا فایل های هم نام موقع آپلود تغییر نام پیدا کنند و مشکلی در آپلود اون ها به وجود نیاد دوست عزیز و تابع رند یه عدد از 100 تا 999 به صورت تصادفی ایجاد و به انتهای نام فایل اضافه میکنه

hadi ala

سلام من می خوام از دیتابیس توسط php خروجی اکسل بگیرم لطفا راهنمایی بفرمایید

لقمان آوند

از کتابخانه phpExcel استفاده کنید.

سحر بشری

سلام استاد خسته نباشید.من قسمت اپلود فایل رو انجام دادم اونجایی که محدودیت نوع فایل رو براساس jpg و png مشخص کردین زمان اجرا فقط فایل های png رو قبول میکنه حتی کدهای شما رو جایگزین کدهایی که نوشتم کردم و همین مشکل بود و زمانی که فایل jpg انتخاب میکنم قسمت دوم شرط که Cannot Upload this file format … را چاپ میکنه. میشه لطف کنید بگید مشکلش کجاست؟ممنون

آسیه جعفری

سلام مال من هم همینطور میشد به جای jpg گذاشتم jpeg درست شد.

لقمان آوند

سلام
کدها تست شدند. بررسی کنید فایلی که آپلود می کنید حتما فرمتش بین فرمت های مجاز درون کد باشه.

ریحانه موسوی

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

 <?php
if (isset($_FILES['file'])) {
 $uploadDir = __DIR__ . '/files/';
 $uploadFilePath = $uploadDir . $_FILES['file']['name'];
 $temp = explode(".", $_FILES["file"]["name"]);
 $extension = end($temp);
 $allowedTypes = array('png', 'jpg');
 if (in_array($extension, $allowedTypes)) {
  if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadFilePath)) {
   echo "success….";
  } else {
   echo "error….";
  }
 } else {
  echo "cannot upload file…";
 }
} 
لقمان آوند

سلام
مشکل خاصی توی این کد نمی بینم. اگر براتون جواب میده خوبه …

ریحانه موسوی

ممنون استاد بابت پاسخ دهی سریعتون.
فیلمهای آموزشی php خیلی کامل و عالی هستند.
براتون آرزوی موفقیت دارم.

لقمان آوند

ممنون
موفق باشید

هادی یاوری

با عرض سلام و خسته نباشید خدمت اقای اوند . من مو به مو دستورات اپلود فایل رو روی ویرایشگر خودم اجرا کردم ولی هر کاری میکنم فایل اپلود نمیشه هر چی رو چک میکنم میبینم درسته . پس مشکلش چی میتونه باشه؟

لقمان آوند

سلام
باید خطاها رو بررسی کنید ببینید مشکل از کجاست …

حسین زارعی

مهندس آوند آموزش هاتون حرف نداره من دوره PHP و طراحی وب خریدم و دارم هر روز طبق آموزش هاتون کار میکنم و جلو میرم واقعا با اینکه ترم آخر کارشناسی کامپیوتر هستم با این حال باید بگم آموزش های شما به مراتب از هر دانشگاه دولتی هم بالاتره در زمینه برنامه نویسی و… امیدوارم تخفیف هاتون ادامه دار باشه که در آینده با اتمام این دوره ها دوره جاوا اسکریپت بتونم ثبت نام کنم 😉 فقط کاش استاد در آینده تو زمینه وب همینجور با قوت ادامه بدید و مثلا طراحی سایت های بزرگ از 0-100 هم تو برنامه داشته باشید، البته مثل اینکه شنیدم دوره های وردپرس تون هم کیفیت آموزشی بالایی داره که توسط استاد علی محمدی تهیه شده

وحید صالحی

انشاالله دوست عزیز بله تمام دوره های سایت از کیفیت بالایی برخوردارن

Pourya Ariyafar

سلام فرق کیورد global با آرایه GLOBALS$ چی هست؟ کاربرد کیورد گلوبال رو میدونم ولی آرایه GLOBALS$ رو نه
چطوری میشه یک متغییر رو GLOBALS$ کرد؟ نمونه اماده تو php داریم؟
کمی گیج شدم توی این موضوع، میخواستم ببینم سوپرگلوبال همون آرایه GLOBALS$ هست؟
+اگر وقت شد لطفا به سوال هایی که در جلسه 6 پرسیدم پاسخ بدید
ممنون

وحید صالحی

بله آرایه سوپر گلوبال همون $Globals هستند این آرایه ها بصورت پیش فرض در php تعبیه شدن که در پس زمینه توابع و کدهای زیادی رو اجرا وفراخونی می کنن بدون اینکه ما متوجه بشیم و فقط ما از اونها در پروژه استفاده می کنیم که انواع مختلفی دارن که فکر می کنم در دوره حتما به انواعشون اشاره شده باشه مثل کوکی ها $_COOKIE و سشن ها $_SESSION و …در ضمن امکان ایجاد آرایه های سوپر گلوبال وجود داره البته نه در هسته php بلکه با استفاده از اکستنشی مثل runkit اما در کل در حالت عادی نیازی به این کار نیست و روش های ساه تری که حالا در ادامه دوره احتمالا باهاش آشنا خواهید شد وجود داره به هر حال برای استفاده از runkit و نحوه کارکرد اون می تونید به مستندات موجود در لینک زیر مراجعه کنید…
موفق باشید
http://www.php.net/manual/en/runkit.installation.php

لقمان آوند

سلام
ارایه GLOBAL شامل همه متغیرهایی هست که در اجرای برنامه هستند. کیورد global فقط تعین می کنه که یه متغیر رو به شکل سراسری ببینیم.
کلا به آرایه ها GET و POST و … همگی می گیم super global …
آرایه هایی هستند که از قبل در php برای منظور خاصی پیاده سازی شدن که در ویدیو تدریس کردیم کاملا.

پایان زمان پشتیبانی

دانشجوی گرامی، بازه پشتیبانی فعال برای این دوره ۳ ماه است که برای شما به پایان رسیده است.

شما هم چنان می توانید سوالات خود را در این قسمت بپرسید اما اولویت پاسخ گویی با دانشجویانی است که بازه پشتیبانی فعال دارند.

نیاز به لاگین

برای ارسال دیدگاه و یا پرسیدن سوال خود در این قسمت، باید در سایت لاگین شوید.
گزارش مشکل