آموزش PHP (بخش پنجم) رشته ها و آرایه های سوپرگلوبال

١٩٧۶٣ visibility ١۶ mode_comment

در این قسمت از آموزش php شما را با مبحث String ها (رشته ها) و آرایه های سوپر گلوبال آشنا خواهیم ساخت . بخش رشته ها و آرایه های سوپرگلوبال یکی از قدرت های php هستند و می توان برنامه های بسیار کاربردی با استفاده از این دو انجام داد .

آرایه های سوپرگلوبال :

این آرایه ها را که اصطلاحا به آن ها آرایه های داخلی php می گویند ، از قبل در زبان php گنجانده شده اند ، و نام آن ها همیشه (دقت کنید ، همیشه) با یک علامت دلار و یک زیر خط مشخص می شود . در قسمت پائین چند نمونه آرایه های سوپرگلوبال را مشاهده می نمائید :

به عنوان مثال برای پردازش یک فرم با متد POST می توانید از آرایه سوپرگلوبال POST استفاده نمائید .

info نکته :

در قسمت های مختلف آموزش php با آرایه های سوپرگلوبال زیادی آشنا می شوید ،مخصوصا در مباحث : پردازش فرم و آپلود فایل و سیستم لاگین .

info نکته :

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

برای این که مفهوم آرایه های سوپر گلوبال برای شما قابل درک باشد ، یک مثال خواهیم زد :

در ابتدا کد زیر را در ویندوز خود اجرا نمائید :

پس از اجرا کردن آن ، بر روی گزینه browse کلی نمائید و یک فایل را انتخاب نمائید و گزینه upload را کلیک نمائید ، حال متنی برای شما چاپ می شود :

آرایه های سوپرگلوبال در php

همانطور که مشاهده نمودید ، آرایه files دارای 5 مقدار است(name , type , tmp_name , error , size)  از این آرایه برای آپلود کردن فایل استفاده می شود .

info نکته :

از دستور print_r برای چاپ کردن مقادیر یک آرایه استفاده می شود ، همچنین در کد بالا از دستور pre استفاده کردیم ، برای نمایش خواناتر آرایه.

رشته ها (Strings) :

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

برای شروع بهتر یک مثال بزنیم :

اگر خروجی را مشاهده نمائید ، این جمله در یک خط نوشته شده است ولی اگر سورس کد صفحه را مشاهده نمائید ، جمله ما در دو خط چاپ شده است .

به این کاراکترها ، کاراکترهای فرار می گویند ، در جدول زیر لیستی از کاراکترهای فرار را مشاهده می نمائید :

کارکاترهای فرار
نام کاراکتر توضیح
\n کاراکتر خط جدید
\r
\t فاصله گذاری افقی
\v فاصله گذاری عمودی
\e یک فاصله یا همان space
\f میدونم هست ولی کاربردش رو خودم هم نمیدونم
\\ قرار دادن یک بک اسلش
\$ علامت دلار
\" قرار دادن کوتیشن
\[0-7]{1,3} برای مبنای 8
\x[0-9A-Fa-f]{1,2}

روش Heredoc :

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

info نکته :

کاراکتر های >>> اجباری هستند و EOD آخر حتما باید در یک خط جداگانه چاپ شود.

آشنایی با چند تابع پرکاربرد برای رشته ها :

1) تابع strlen :

این تابع طول رشته را بر میگرداند ( از ابتدا تا انتهای رشته را میخواند و تعداد کاراکترها ها را بر می گرداند.

2) تابع strpos :

در این تابع میتوان یک مقدار را مورد جستجو قرار داد و موقعیت آن را بر می گرداند :

در کد بالا ، مقدار world را مورد جستجو قرار می دهد و موقعیت اولین کاراکتر را یعنی w را بر می گرداند.

3) تابع های حذف فضاهای خالی :

  • ltrim : برای حذف فضای خالی سمت چپ استفاده می شود.
  • chop : برای حذف فضای خالی سمت راست استفاده می شود.
  • trim : برای حذف فضاهای خالی سمت چپ و راست استفاده می شود.

4) تابع های تبدیل حروف رشته ها :

  • strtoupper : این تابع رشته ای را به حروف بزرگ تبدیل می کند.
  • strtolower : این تابع رشته ای را به حروف کوچک تبدیل می کند.
  • ucfirst : بزرگ کردن اولین حرف رشته مثلا Milad
  • ucwords : بزرگ کردن اولین حرف تمام کلمات رشته مثل Milad Heydari

5) جایگزینی رشته ها :

با استفاده از این تابع شما می توانید مثلا به جای _ از - استفاده شود :

برای آشنایی با تمامی تابع های رشته ها می توانید به آدرس زیر مراجعه نمائید :

این قسمت را حتما چندین بار تمرین کنید تا در ذهنتان باقی بماند .

در قسمت بعدی آموزش ،  شما را با خطاها در php آشنا خواهیم ساخت

comment دیدگاه کاربران
hosein2398

اٍ چرا عکسش فرق کرد؟ 🙂

میلاد حیدری

درست شد

عباس بهرامی کیا

مرسی میلاد خان.

HappyMoon

به جای تابع chop از rtrim هم می‌شه استفاده کرد؟

میلاد حیدری

بله می توان استفاده کرد

HappyMoon

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

میلاد حیدری

سلام این 3 تابه کاربردهای بسیار زیادی دارند به عنوان مثال در پردازش فرم ها که خواهیم گفت ، بسیار پر کاربرد هستند و می توان بسیار از مسائل امنیتی ، رفع اشگال و… را با این سه تابع بر طرف کرد…

HappyMoon

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

میلاد حیدری

بله حتما ولی کاربرد این 3 تابع فقط در فرم ها نیست …

HappyMoon

درسته. کم‌کم متوجه بقیه کاربردهاش هم می‌شیم. 😳

HappyMoon

از تابع str_replace() خوشم اومد. 😀

Mostafa

سلام آقای حیدری عزیز اگه می شه شما به جای آقای محمدسینا بخش آموزش کد نویسی قالب با فتوشاپ طراحی شده را ارائه دهید با تشکر

لقمان آوند

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

Mostafa

خوب شما لطف کنید با اجازه ی آقای معراجیان به جای ایشون این این آموزش رو ارائه بدین خواهشاً

لقمان آوند

ایشون این سری رو شروع کردند و هیچ کس به خوبی خودشون نمی تونن ادامه بدن . ایشالله در آینده قصد دارم که آموزش ویدیویی طراحی قالب رو بزارم . البته بعد از اتمام جلسات html و js .

Mostafa

aha mamnoon

نیاز به لاگین

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