مقالات طراحی وب پی اچ پی کار با آرایه ها در PHP

در این آموزش موارد زیر را برسی خواهیم کرد:

  • نحوه تعریف و کار با آرایه ها در PHP
  • توابع مرتب سازی آرایه ها در PHP
  • مرجع توابع کار با آرایه ها در PHP

آرایه چیست و چه کاربردی دارد ؟

می دانید که متغیر فضایی است که می تواند مقداری اطلاعات مثل متن یا عدد را در خود نگهداری نماید . هر متغیر معمولی فقط می تواند یک مقدار را در خود جای دهد و نه بیشتر . این محدودیت گاهی اوقات ما را دچار مشکل می سازد .
برای مثال فرض کنید که لیستی از کتاب های آموزشی دارید . نگهداری نام هر یک از کتاب ها در یک متغیر جدا به صورت زیر خواهد بود :

حال فرض کنید که می خواهید بین کتاب ها جستجو کرده و کتاب خاصی را پیدا کنید . در حالتی که ۳ کتاب دارید ، ساده است اما هنگامی که ۳۰۰ کتاب دارید چه ؟ .آنگاه استفاده از روش سنتی فوق غیر ممکن خواهد بود و باید از آرایه ها استفاده نمایید .

آرایه متغیری است که می تواند چندین مقدار را در خود نگهداری نماید . این نوع متغیر تمامی موارد مورد نظر را درون خود با یک نام واحد نگهداری کرده . و به هر عضو یک اندیس Index اختصاص می دهد . شما می توانید به راحتی با به کار بردن نام آرایه و اندیس مورد نظر به هر عضو آرایه دسترسی داشته باشید . همچنین می توانید به راحتی با استفاده از ساختارهای حلقه ای بین اعضای آرایه حرکت کنید .
به طور کلی در PHP 3 نوع آرایه داریم :
آرایه عددی ( Numeric array ): در این نوع آرایه ، اعضای آرایه همه با یک نام واحد تعریف شده و هر کدام یک اندیس عددی منحصر به فرد خود را دارند ، که به وسیله آن شناسایی و قایل دسترسی می شوند .
آرایه متناظر ( Associative array ): در این نوع آرایه هر عضو به صورت یک جفت مقدار و شناسه عددی ( ID Key ) تعریف می شود . برای دسترسی به هر عضو آرایه باید از شناسه عددی آن استفاده کرد .
آرایه تو در تو ( Multidimensional array ): این نوع آرایه از دو یا چند آرایه تو در تو تشکیل می شود .
آرایه عددی ( Numeric array ):

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

در حالت اول آرایه را به صورت اتوماتیک ساخته شده و به هر عضو به ترتیب از ابتدا یک اندیس عددی اختصاص می یابد . این اندیس به صورت پیش فرض از صفر شروع می شود :
حالت اول: تعریف آرایه عددی

در روش دوم تعریف آرایه های عددی ، هنگام تعریف اعضای آرایه ، اندیس آنها را نیز تعیین می کنیم . در این حالت می توان اندیس های متفاوتی را نیز در نظر گرفت .
حالت دوم: تعریف آرایه عددی

در روش دوم ، هر عضو آرایه به صورت یک جفت مقدار و یک شناسه عددی ( ID Key ) تعریف می شود .
برای نگهداری گونه های خاصی از اطلاعات ، معملا آرایه های عددی مناسب نیستند و بهتر است از آرایه های متناظر استفاده شود .
نحوه استفاده از این آرایه را در مثال های زیر آموزش داده ایم . در آرایه زیر اسامی چند نفر به همراه اسامی آنها را تعریف کرده ایم :

حالت اول: تعریف آرایه متناظر

حالت دوم: تعریف آرایه متناظر

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

نحوه: آرایه تو در تو

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

مرتب سازی آرایه ها در PHP :

در بخش قبل به آموزش روش تعریف و استفاده از آرایه ها در PHP پرداختیم . در این بخش توابعی را به شما معرفی می کنیم که به وسیله آنها می توانید آرایه ها را ، بر حسب مقادیر عنصرشان مرتب کنید .
اعضای یک آرایه را می توانید به صورت صعودی یا نزولی ، بر حسب حروف الفبا و یا مقادیر عددی مرتب سازی نمایید . توابع مرتب سازی آرایه ها در PHP عبارتند از :

تابع ( ) sort :
این تابع مقادیر آرایه را از پایین به بالا ( صعودی ) مرتب می کند . در مثال زیر نحوه کار با این تابع و خروجی آن را در عمل نشان داده ایم :
مثال ۱

خروجی: BMW Toyota Volvo

مثال ۲

خروجی: ۲ ۴ ۶ ۱۱ ۲۲
تابع ( ) rsort :
این تابع مقادیر آرایه را از بالا به پایین ( نزولی ) مرتب می کند . در مثال زیر نحوه کار با این تابع و خروجی آن را در عمل نشان داده ایم :
مثال ۱

خروجی: Volvo Toyota BMW

مثال ۲

خروجی: ۲۲ ۱۱ ۶ ۴ ۲
تابع ( ) asort :
این تابع مقادیر آرایه های دوبعدی را از پایین به بالا ( صعودی ) ، بر حسب مقدار Value آنها مرتب می کند . در مثال زیر نحوه کار با این تابع و خروجی آن را در عمل نشان داده ایم :
مثال

خروجی:
Key = Peter , Value = 35

Key = Ben , Value = 37
Key = Joe , Value = 43
تابع ( ) ksort :
این تابع مقادیر آرایه های دوبعدی را از پایین به بالا ( صعودی ) ، بر حسب مقدار Key آنها مرتب می کند . در مثال زیر نحوه کار با این تابع و خروجی آن را در عمل نشان داده ایم :
مثال

خروجی:
Key=Ben, Value=37
Key=Joe, Value=43
Key=Peter, Value=35
تابع ( ) arsort :
این تابع مقادیر آرایه های دوبعدی را از پالا به پایین ( نزولی ) ، بر حسب مقدار Value آنها مرتب می کند . در مثال زیر نحوه کار با این تابع و خروجی آن را در عمل نشان داده ایم :
مثال

خروجی:
Key=Joe, Value=43
Key=Ben, Value=37
Key=Peter, Value=35


تابع ( ) krsort :
این تابع مقادیر آرایه های دوبعدی را از پالا به پایین ( نزولی ) ، بر حسب مقدار key آنها مرتب می کند . در مثال زیر نحوه کار با این تابع و خروجی آن را در عمل نشان داده ایم :
مثال

مرجع توابع کار با آرایه ها در PHP :

نام تابعشرح عملکرد
array ( )از این تابع برای ایجاد یک آرایه جدید استفاده می شود .
array_change_key_case ( )این تابع کاراکتر کلیدها در آرایه های دو بعدی را به حروق بزرگ یا کوچک تبدیل می کند .
array_chunk ( )این تابع ، یک آرایه موجود را به دو یا چند آرایه کوچکتر تبدیل می کند .
array_combine ( )این تابع ، دو آرایه تک بعدی را با هم ترکیب کرده و یک آرایه دو بعدی با Key و Value می سازد .
array_count_values ( )این تابع ، تعداد عناصر مشابه ( دارای Value یکسان ) را در یک آرایه می شمارد .
array_diff ( )این تابع مقادیر موجود در دو یا چند آرایه را با هم بررسی کرده و اختلاف هایشان را بر می گرداند .
array_fill ( )این تابع یک آرایه موجود را با مقادیر تعیین شده برای آن ، پر می کند .
array_fill_keys ( )این تابع کلیدهای تعیین شده ( keys ) برای آنها را به عناصر یک آرایه اضافه می کند .
array_filter ( )این تابع عناصر یک آرایه را بر حسب دستورات یک تابع دیگر فیلتر کرده و خروجی ها را بر می گرداند .
array_flip ( )این تابع در یک آرایه دو بعدی ، جای مقادیر ( values ) و کلیدها ( keys ) را با هم جا به جا می کند و یک آرایه جدید را ساخته و در خروجی بر می گرداند .
array_intersect ( )این تابع مقادیر عناصر دو یا چند آرایه را با هم مقایسه کرده و عناصر تکراری و یکسان را بر می گرداند .
array_key_exists ( )این تابع وجود یا عدم وجود یک کلید ( key ) را در یک آرایه بررسی کرده و جواب را بر می گرداند .
array_keys ( )این تابع کلیدهای ( keys ) موجود در عناصر یک آرایه را بر می گرداند .
array_map ( )این تابع مقادیر عناصر یک آرایه را به تابعی تعیین شده از سوی کاربر فرستاده و مقادیر جدید بازگشتی را در یک آرایه ذخیره می کند .
array_merge ( )این آرایه عناصر دو یا چند آرایه را با هم ترکیب کرده و یک آرایه جدید تولید می کند .
array_pop ( )این تابع آخرین عنصر عضو آرایه را حذف می کند .
array_push ( )این تابع یک یا چند عنصر جدید تعیین شده را به انتهای آرایه اضافه می کند .
array_rand ( )این تابع یک یا چند عنصر از آرایه را به صورت رندوم انتخاب کرده و بر می گرداند .
array_search ( )این تابع آرایه را برای یک مقدار value داده شده به آن جستجو کرده و ارزش کلید key آن را بر می گرداند .
array_reverse ( )این تابع عناصر یک آرایه را به ترتیب برعکس در خروجی نشان می دهد .
array_shift ( )این تابع المنت اول آرایه را حذف کرده و مقدار آن را بر می گرداند .
array_slice ( )این تابع بخش تعیین شده ای از یک آرایه را جدا کرده و بر می گرداند .
array_splice ( )این تابع عناصری از یک آرایه را حذف کرده و با مقادیر جدید تعیین شده جایگزین می کند .
array_sum ( )این تابع مجموع عددی یک آرایه را بر می گرداند .
array_unique ( )این تابع عناصر تکراری یک آرایه را حذف می کند .
array_unshift ( )این تابع یک یا چند عنصر مورد نظر را به ابتدای آرایه اضافه می کند .
array_values ( )این تابع کلیه مقادیر values یک آرایه را بر می گرداند .
array_walk ( )این تابع اعضای یک آرایه را یک به یک خوانده و آن ها را در یک تابع اعمال می کند .
کار با آرایه ها در PHP
به این مطلب رای دهید
Telegram Facebook WhatsApp +Google Twitter LinkedIn

دیدگاه خود را بیان کنید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

This site uses Akismet to reduce spam. Learn how your comment data is processed.