نماد سایت تیک۴

آموزش آرایه در پی‌اچ‌پی: انواع آرایه‌ در PHP

آرایه‌ در PHP

آرایه‌ در PHP

در ابتدا شاید نیاز باشد بدانید (php array) به کمک انواع آرایه‌ در PHP قادر خواهید بود مقادیر زیادی را در یک متغیر نگهداری کنید.
کسب مهارت در کار با آرایه‌ها در برنامه نویسی، توانایی و کیفیت خروجی کار شما را افزایش خواهد داد.
در این آموزش به بررسی مفاهیم مقدماتی انواع آرایه‌ درPHP می‌پردازیم.
همچنین با شیوه ایجاد آرایه و نحوه استفاده از آرایه‌های انجمنی (associative) و چندبعدی را بررسی خواهیم کرد.
همچنین مثال‌های عملی زیادی در خصوص آرایه‌های PHP ارائه شده است.

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

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

$Books1 = " HTML " ; $Books2 = " ASP " ; $Books3 = " PHP " ;

 

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

آرایه متغیری است که می تواند چندین مقدار را در خود نگهداری نماید.
این نوع متغیر تمامی موارد مورد نظر را درون خود با یک نام واحد نگهداری کرده.
و به هر عضو یک اندیس Index اختصاص می دهد.
شما می توانید به راحتی با به کار بردن نام آرایه و اندیس مورد نظر به هر عضو آرایه دسترسی داشته باشید.

همچنین می توانید به راحتی با استفاده از ساختارهای حلقه ای بین اعضای آرایه حرکت کنید.

php array | آرایه‌ در PHP | آموزش آرایه PHP

به طور کلی در PHP سه نوع آرایه داریم

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

آرایه عددی ( Numeric array )

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

دو روش کلی برای تعریف آرایه های عددی در PHP وجود دارد :

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

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

$ Books = array ( " HTML " , " CSS " , " ASP " , " PHP " ) ;

 

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

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

$ Books [ 0 ] = " HTML " ; $ Books [ 1 ] = " CSS " ; $ Books [ 2 ] = " ASP " ; $ Books [ 3 ] = " PHP " ;

 

آرایه متناظر ( Associative array )

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

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

& ages = array ( " Ali " => 32 , " Reza " => 30 , " Ahmad => 34 ) ;

 

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

& ages [ ' Ali ' ] = " 32 " ; & ages [ ' Reza ' ] = " 30 " ; & ages [ ' Ahmad ' ] = " 34 " ; آرایه های تو در تو ( Multidimensional array ) :

 

آرایه‌های تو در تو

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

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

$families = array ( "Griffin"=>array ( "Peter", "Lois", "Megan" ), "Quagmire"=>array ( "Glenn" ), "Brown"=>array ( "Cleveland", "Loretta", "Junior" ) ) ;

 

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

<?php echo " Is " . $families['Griffin'][2] . " a part of the Griffin family?" ; ?>

 

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

در بخش قبل به آموزش روش تعریف و استفاده از آرایه‌ها در php پرداختیم. (php array)
در این بخش توابعی را به شما معرفی می کنیم که به وسیله آنها می توانید آرایه ها را ، بر حسب مقادیر عنصرشان مرتب کنید.
اعضای یک آرایه (php array)  را می توانید به صورت صعودی یا نزولی ، بر حسب حروف الفبا و یا مقادیر عددی مرتب سازی نمایید.

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

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

<?php $cars = array( " Volvo " , " BMW ", " Toyota " ) ; sort ( $cars ) ; ?>

خروجی: BMW Toyota Volvo

مثال ۲

<?php $numbers = array ( 4 , 6 , 2 , 22 , 11 ) ; sort ( $numbers ) ; ?>

خروجی: ۲ ۴ ۶ ۱۱ ۲۲

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

<?php $cars = array( " Volvo " , " BMW ", " Toyota " ) ; rsort ( $cars ) ; ?>

خروجی: Volvo Toyota BMW

مثال ۲

<?php $numbers = array ( 4 , 6 , 2 , 22 , 11 ) ; rsort ( $numbers ) ; ?>

خروجی: ۲۲ ۱۱ ۶ ۴ ۲

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

<?php $age = array( " Peter " => " 35 " , " Ben " => " 37 " , " Joe " => " 43 " ) ; asort( $age ) ; ?>

خروجی:

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

<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); ksort($age); ?>

خروجی:

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

<?php $age=array( " Peter " => " 35 " , " Ben " => " 37 " , " Joe " => " 43 " ) ; arsort( $age ) ; ?>

خروجی:

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

<?php $age=array( " Peter " => " 35 " , " Ben " => " 37 " , " Joe " => " 43 " ) ; krsort( $age ) ; ?>

آرایه‌ در PHP

مرجع توابع کار با انواع آرایه در 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 ( ) این تابع اعضای یک آرایه را یک به یک خوانده و آن ها را در یک تابع اعمال می کند .
خروج از نسخه موبایل