آموزش PHP

آموزش PHP - آرایه ها

آرایه یک ساختار داده ای است که یک یا چند نوع مشابه را در یک مقدار ذخیره می کند. به عنوان مثال اگر شما می خواهید 100 اعداد را ذخیره کنید، به جای تعریف 100 متغیر، به سادگی یک آرایه با طول 100  را تعریف می کنید.

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

  • Numeric array (آرایه عددی): آرایه ای با ایندکس عددی است. مقدار ها به صورت خطی ذخیره می شوند و دسترسی می یابند.
  • Associative array: آرایه از رشته ها به عنوان ایندکس استفاده می کند. این مقادیر عناصر را در ارتباط با مقادیر کلیدی ذخیره می کند نه در یک نظم دقیق شاخص خطی.
  • Multidimensional array (آرایه چند بعدی): آرایه حاوی یک یا چند آرایه است که مقادیر با استفاده از ایندکس های چندگانه دسترسی پیدا می کند.

Numeric array

این آرایه ها می توانند اعداد، رشته ها و هر شیء را ذخیره کنند، اما ایندکس هایشان با اعداد نمایان می شود. به طور پیش فرض ایندکس آرایه از صفر شروع می شود.

مثال

در زیر نمونه ای برای نشان دادن دستورنگارش (syntax) ایجاد و دسترسی به آرایه های عددی قرار داده شده است.

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

<html>
   <body>
   
      <?php
         /* First method to create array. */
         $numbers = array( 1, 2, 3, 4, 5);
         
         foreach( $numbers as $value ) {
            echo "Value is $value <br />";
         }
         
         /* Second method to create array. */
         $numbers[0] = "one";
         $numbers[1] = "two";
         $numbers[2] = "three";
         $numbers[3] = "four";
         $numbers[4] = "five";
         
         foreach( $numbers as $value ) {
            echo "Value is $value <br />";
         }
      ?>
      
   </body>
</html>

نتیجه زیر را تولید می کند:

Value is 1 
Value is 2 
Value is 3 
Value is 4 
Value is 5 
Value is one 
Value is two 
Value is three 
Value is four 
Value is five 

 

Associative array

آرایه های Associative  به لحاظ قابلیت عملکرد بسیار شبیه به آرایه عددی هستند، اما از لحاظ ایندکس، متفاوت اند. آرایه Associative   ایندکس خود را به صورت رشته در اختیار شما قرار می دهد تا بتوانید ارتباط قوی میان کلید و مقدارها ایجاد کنید.

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

نکته: در هنگام چاپ، آرایه associative را در داخل نقل قول نگذارید، در غیر این صورت هیچ مقداری را به شما نشان نمی دهد.

مثال

<html>
   <body>
      
      <?php
         /* First method to associate create array. */
         $salaries = array("mohammad" => 2000, "qadir" => 1000, "zara" => 500);
         
         echo "Salary of mohammad is ". $salaries['mohammad'] . "<br />";
         echo "Salary of qadir is ".  $salaries['qadir']. "<br />";
         echo "Salary of zara is ".  $salaries['zara']. "<br />";
         
         /* Second method to create array. */
         $salaries['mohammad'] = "high";
         $salaries['qadir'] = "medium";
         $salaries['zara'] = "low";
         
         echo "Salary of mohammad is ". $salaries['mohammad'] . "<br />";
         echo "Salary of qadir is ".  $salaries['qadir']. "<br />";
         echo "Salary of zara is ".  $salaries['zara']. "<br />";
      ?>
   
   </body>
</html>

نتیجه زیر را تولید می کند:

Salary of mohammad is 2000
Salary of qadir is 1000
Salary of zara is 500
Salary of mohammad is high
Salary of qadir is medium
Salary of zara is low

 

Multidimensional array

در آرایه چند بعدی هر عنصر در آرایه اصلی می تواند یک آرایه باشد و هر عنصر در زیر آرایه می تواند یک آرایه باشد و غیره. مقادیر آرایه چند بعدی با استفاده از ایندکس چندگانه قابل دسترسی هستند.

مثال

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

این مثال یک آرایه associative است، شما می توانید آرایه عددی را نیز به همین شکل ایجاد کنید.

<html>
   <body>
      
      <?php
         $marks = array( 
            "mohammad" => array (
               "physics" => 35,
               "maths" => 30,	
               "chemistry" => 39
            ),
            
            "qadir" => array (
               "physics" => 30,
               "maths" => 32,
               "chemistry" => 29
            ),
            
            "zara" => array (
               "physics" => 31,
               "maths" => 22,
               "chemistry" => 39
            )
         );
         
         /* Accessing multi-dimensional array values */
         echo "Marks for mohammad in physics : " ;
         echo $marks['mohammad']['physics'] . "<br />"; 
         
         echo "Marks for qadir in maths : ";
         echo $marks['qadir']['maths'] . "<br />"; 
         
         echo "Marks for zara in chemistry : " ;
         echo $marks['zara']['chemistry'] . "<br />"; 
      ?>
   
   </body>
</html>

نتیجه زیر را تولید می کند:

Marks for mohammad in physics : 35
Marks for qadir in maths : 32
Marks for zara in chemistry : 39
در صورتی که سوال و یا نظری دارید، از بخش نظرات با ما در میان بگذارید.

خبـرنــامه

Newsletters

در خبــرنـامه سافت اسکیل عضو شویــد تا جدیدترین هـای سایت را بلافاصله در ایمیل خـود دریافت کنیـد

شما چه نظر و یا سوالی درباره این نوشته دارید؟

مبحث آموزشی

آموزش PHP

Learn PHP

سرفصل ها

پرســیدن سؤال جدید

سؤال های تخصصی خود را از ما بپرسید

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

https://telegram.me/softskill_ir

عملیات کاربران

خبـرنــامه

Newsletters

در خبــرنـامه سافت اسکیل عضو شویــد تا جدیدترین هـای سایت را بلافاصله در ایمیل خـود دریافت کنیـد

کلیک کنید و سوالات خود را از ما بپرسید
لطفا فرم سوال را پر کنید

سوال شما با موفقیت ثبت شد. برای اینکه بتوانیم به شما اطلاع رسانی کنیم، موارد زیر را وارد کنید:

لطفا چند لحظه منتظر بمانید ...