رضا درودی 31 شهریور 1394 بدون نظر 1060 بازدید آموزش php

آرایه چیست؟

آرایه یک نوع متغیر است که می تواند چند نوع داده را در خود ذخیره کند که هر کدام از این داده ها با یک برچسب (index) از سایر داده ها متمایز می شود. از مزایای مهم آرایه ها اینست که ما با استفاده از توابعی که وجود دارد، در داخل آرایه به جستجوی یک مقدار بپردازیم و یا اینکه لیست عناصر آرایه را مرتب کنیم که این امر در برنامه نویسی بسیار کاربرد دارد.

تعریف آرایه:

برای ساخت آرایه از کلمه کلیدی array استفاده میکنیم. به عنوان مثال :

$array_name = array(‘val_1′,’val_2′,’val_n’);

عناصر یک آرایه می توانند ، انواع داده ای مختلف باشند. مثلا میتوانند عدد باشند، می توانند رشته باشند و حتی می توانند آرایه باشند.(در صورتی که عناصر یک آرایه، خودشان هم آرایه باشند، به آن آرایه چندبعدی می گویند که در ادامه به توضیح آن می پردازیم)

به عنوان مثال عناصر آرایه زیر، از نوع عددی است:


$average = array(15,12,18,16,14,17);

 

و عناصر آرایه زیر از نوع رشته ای است:


$students = array('reza','ali','hasan','hossein');

برای دستیابی به هریک از عناصر آرایه، php برای هر کدام از آن عناصر یک برچسب یا اندیس (index) تعریف میکند تا بتواند با استفاده از آن به هر یک از این عناصر دسترسی داشته باشد. این برچسب ها بصورت عددی هستند و از عدد صفر شروع میشود. به عنوان مثال اگر آرایه زیر را در نظر بگیریم:


$students = array('reza','ali','hasan','hossein');

 

Php برای عنصر اول (یعنی reza) اندیس 0 در نظر می گیرد. برای alie اندیس 1 ، برای hasan اندیس 2 و الی آخر.

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


Echo $students[2]

یعنی ابتدا نام آرایه را نوشته ($students) و سپس در داخل براکت ، اندیس hasan (که در این مثال 2 است) را می گذاریم.

افزودن یک عنصر به آرایه

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


$students[] = 'arash';

حذف یک عنصر از آرایه

برای حذف یک عنصر از آرایه در php، از دستور unset به شکل زیر استفاده می کنیم:


Unset($student[2]);

این دستور، عنصر با اندیس 2 را از آرایه حذف میکند.

دستور دیگری برای حذف عناصر از آرایه وجود دارد که می تواند همزمان چندین عنصر را حذف کند. این دستور array_splice است و بصورت زیر بکار می رود:


Array_splice(نام آرایه,نقطه شروع ,تعداد مورد نظر جهت حذف);

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


Array_splice($stdents,2,3);

این دستور از اندیس 2 شروع کرده و سه عنصر را از آرایه $students حذف میکند.

آرایه های انجمنی (associative arrays)

اگر ما اندیس آرایه ها را خودمان تعیین بکنیم به این آرایه ، آرایه انجمنی میگویند. اندیس می تواند عددی یا رشته ای باشد. در زیر دو نمونه از آرایه های انجمنی را می بینید:


$students = array(100=>'ali' , 101=> 'abbas' , 50=> 'hashem' , 200 => 'bagher');

$student = array('name'=>'reza' , 'famil'=>'darroodi' , 'age'=>30);

برای دسترسی به عناصر آرایه های انجمنی نیز همانند آرایه های معمولی عمل کرده و اندیس را داخل براکت می گذاریم. مثلا:


Echo $student['name'];

دستور فوق، نام دانشجو (در این مثال reza) را چاپ میکند.

آرایه های چند بعدی

به آرایه ای که عناصر آن، خود نیز آرایه باشد، آرایه دو بعدی می گویند. مثلا:


$students = array( array('reza',105) , array('ali',75) , array('sajjad',200) );

 

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


Echo $studens[1][0];

یعنی از آرایه $students مقدار عنصر 1 را انتخاب کن (در این مثال یعنی عنصر array(‘ali’,75)) و سپس در این عنصر، عنصر 0 را انتخاب کن (یعنی مقدار ‘ali’)

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


$array3d [x][y][z];

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

مرتب کردن آرایه ها

برای مرتب کردن آرایه ها 6 تابع مختلف وجود دارد که عبارتند از:

Sort : برای مرتب کردن آرایه های معمولی به صورت صعودی به کار می رود.

rsort : برای مرتب کردن آرایه های معمولی به صورت نزولی به کار می رود.

Ksort : آرایه های انجمنی را بر اساس اندیس و به صورت صعودی مرتب میکند.

Krsort : آرایه های انجمنی را بر اساس اندیس و به صورت نزولی مرتب میکند.

Assort : آرایه های انجمنی را بر اساس مقادیرشان و به صورت صعودی مرتب میکند.

Arsort : آرایه های انجمنی را بر اساس مقادیرشان و به صورت نزولی مرتب میکند.

در این ویدیو تمام این توابع به همراه مثال در محیط برنامه نویسی توضیح داده شده است.

توابع پر کاربرد مربوط به آرایه ها

Is_array : برای چک کردن اینکه آیا یک متغیر از نوع آرایه است یا نه، بکار میرود.

Count : تعداد عناصر آرایه را برمیگرداند.

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

Implode : برای تبدیل عناصر یک آرایه به یک رشته استفاده می شود.

Array_slice : تعدادی از عناصر آرایه را برمیگرداند. با استفاده از این دستور میتوان زیر مجموعه ای از عناصر یک آرایه را انتخاب کرد.

Array_search : برای جستجوی یک عنصر در آرایه به کار می رود. در صورتی که عنصر را پیدا کند، اندیس آن را به عنوان نتیجه برمیگرداند و در صورتی که عنصر را در آرایه پیدا نکند، مقدار false را به عنوان نتیجه برمیگرداند.

In_array : برای چک کردن وجود یک عنصر در آرایه به کار می رود. در صورتی که عنصر را پیدا کند، true و در غیراینصورت false را به عنوان نتیجه برمیگرداند.

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

 

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

جهت دانلود این بخش از فیلم های آموزش php بر روی لینک زیر کلیک نمایید:

خرید این فیلم آموزشی به صورت تک (تومان) :
ثبت نام و دسترسی کامل به تمام فیلم ها و محتوای دوره مجازی آموزش PHP و MySQL قبلا ثبت نام کرده ام؛ ورود

دسترسی سریع :

نظرات کاربران (0)