آرایه ها در php

ناصر نادری | 1394/01/18


بنام خدا . در این  جلسه از سری آموزشهای برنامه نویسی php میخواییم در مورد آرایه ها در php صحبت کنیم .

php از نظر آرایه ها یک سرو گردن بالاتر از بسیاری از زبانهای پر استفاده دنیاست . سه نوع آرایه در php وجود داره که به شرح زیر هست :

آرایه های عددی (با ایندکس عددی) :

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

<?php
/* ایجاد یک آرایه با اندیس عددی */
$days = array( 1, 2, 3, 4, 5,6,7);
//پیمایش عناصر ارایه بر اساس شماره اندیس
foreach( $numbers as $value )
{
    echo "Value is $value <br />";
}
/*یک روش دیگر برای ایجاد آرایه با اندیس عددی */
$days[0] = "شنبه";
$days[1] = "یک شنبه";
$days[2] = "دو شنبه";
$days[3] = "سه شنبه";
$days[4] = "چها رشنبه";
$days[5] = "پنج رشنبه";
$days[6] = "جمعه";

foreach( $numbers as $value )
{
    echo "Value is $value <br />";
}
?> 

 آرایه های انجمنی یا Associative Arrays :

برای اینکه بتونیم با اندیس های غیر عددی به عناص ارایه دسترسی داشته باشیم  php امکانی رو فراهم کرده که عناصر آرایه  رو میشه بصورت یک جفت کلید و مقدار  تعریف کرد . در این حالت نام کلید دست خودمونه و میتونیم از هر شناسه ای استفاده کنیم . این نوع تعریف یک قابلیت انعطاف پذیری بالایی به  کار با آرایه ها میده .:

 <?php
/* تعریف و مقدار دهی یک آرایه از نوع انجمن */
$grades = array( 
"mohammad" => 18, 
"ali" => 15, 
"reza" => 12
);

//چاپ مقادیر آرایه با دسترسی توسط نام کلید
echo "grade of mohammad is ". $grades['mohammad'] . "<br />";
echo "grade of ali is ". $grades['ali']. "<br />";
echo "grade of reza is ". $grades['reza']. "<br />";

/* یک روش دیگر برای تعریف و مقدار دهی آرایه های انجمنی */
$grades['mohammad'] = "high";
$grades['ali'] = "medium";
$grades['reza'] = "low";

echo "Grade of mohammad is ". $salaries['mohammad'] . "<br />";
echo "Grade of ali is ". $salaries['ali']. "<br />";
echo "Grade of reza is ". $salaries['reza']. "<br />";
?> 

این نوع تعریف آرایه ها ایده اصلی طراحی فرمت json برای تبادل اطلاعات با وب سرویس هاست .

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

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

 <?php
/*تعریف یک آرایه دوبعدی از نمرات سه دانش آموز*/
$grades = array( 
"mohammad" => array
(
"physics" => 35, 
"maths" => 30, 
"chemistry" => 39 
),
"ali" => array
(
"physics" => 30,
"maths" => 32,
"chemistry" => 29
),
"reza" => array
(
"physics" => 31,
"maths" => 22,
"chemistry" => 39
)
);
/*دسترسی و چا پ عناصر آرایه دوبعدی انجمنی */
echo "Grade for mohammad in physics : " ;
echo $grades['mohammad']['physics'] . "<br />"; 
echo "Grade for ali in maths : ";
echo $grades['ali']['maths'] . "<br />"; 
echo "Grade for reza in chemistry : " ;
echo $gardes['reza']['chemistry'] . "<br />"; 
?> 

آرایه بالا در واقع ساختار جدولی زیر رو داره :

  physics maths chemistry
mohammad 35 30 39
ali 30 32 29
reza 31 22 39

ترکیب دو آرایه در php  با  متد array_combine:

 <?php
$a = array('green', 'red', 'yellow');
$b = array('avocado', 'apple', 'banana');
//ترکیب دوآرایه بالا
$c = array_combine($a, $b);

//چاپ عناصر هردو آرایه ترکیب شده
print_r($c);
?> 

//خروجی :
//Array([green] => avocado [red] => apple [yellow] => banana) 

جمع  دارایه ها یا عناصر ارایه با متد  array_sum : 

 <?php
$a = array(2, 4, 6, 8);
echo "sum(a) = " . array_sum($a) . "<br />";

$b = array("a" => 1.2, "b" => 2.3, "c" => 3.4);
echo "sum(b) = " . array_sum($b) . "<br />";
?> 

//خروجی :
//sum(a) = 20
//sum(b) = 6.9 

با متد  count هم میتونید تعداد عناصر آرایه رو بدست بیارید .

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

تا جلسه بعد در پناه حق ...

 


فایلهای ضمیمه
توجه! هیچ فایل ضمیمه ای برای این مطلب یافت نشد

نظرات شما نظر جدید