PHP Associative Array In Hindi


पिछले Topic में आपने PHP Indexed Array के बारे में पढ़ा और इस Topic में हम जानेंगे कि PHP में Associative Array किस तरह से define और use करते हैं।

Associative Array , एक प्रकार का array ही है जो कि array  values को key के साथ associate करता है , means Associative Array में हम values के साथ-साथ key  भी define करते हैं। Array values को key के साथ associate करने  के लिए हम => का use करते हैं।

PHP Associative Array Syntax

$x = array('key1'=>'value1', 'key2'=>'value2');
$x = ['key1'=>'value1', 'key2'=>'value2'];

ऊपर define किये गए किसी भी method के through हम PHP में Array Define कर सकते हैं।


Difference Between Indexed Array And Associative Array

PHP में Indexed Array और Associative Array में सबसे बड़ा difference यही की Indexed Array में हमें सिर्फ values को insert करना होता है जिससे value indexed number के साथ associate (bind) होती थी , जबकि Associative Array में हम key के साथ value insert करते हैं जिससे value दी गयी key के साथ ही associate होती है।

PHP Associative Array Example

File : assoc_array.php

Copy Fullscreen Close Fullscreen
<?php
  $arr = ['key1'=> 'value1', 'key2'=> 'value2'];
  echo'<pre>';
  print_r($arr);       
?>
Output
Array
(
    [key1] => value1
    [key2] => value2
)

इसके आलावा आप Indexed Array की तरह key value को एक साथ न रखकर अलग -अलग भी assign कर सकते हैं , और उस पर foreach loop का use करके traversal भी कर सकते हैं।

See Example

File : assoc_array2.php

Copy Fullscreen Close Fullscreen
<?php
  $arr['name'] = 'Rahul Rajput'; 
  $arr['age'] = 25; 
  $arr['Skils'] = 'PHP, Laravel, JS, Jquery, Ajax, JSON etc.'; 
  $arr['Designation'] = 'Web Developer'; 

  /*Now print display these values using foreach loop*/
  foreach($arr as $key => $value)
  {
    echo $key." = ". $value."<br>";
  }   
?>
Output
name = Rahul Rajput
age = 25
Skils = PHP, Laravel, JS, Jquery, Ajax, JSON etc.
Designation = Web Developer

Note - Example में  '<br>'  का use line break के लिए किया गया है और dot (.) का use String Concatenation के लिए।

तो इस तरह से भी हम values को key के साथ associate कर सकते हैं और foreach loop use कर सकते हैं। और अगर आप चाहें तो Indexed Array  की तरह सिर्फ key के नाम के साथ भी single value को access कर सकते हैं।

For Example

File : assoc_array3.php

Copy Fullscreen Close Fullscreen
<?php
  $arr['name'] = 'Rahul Rajput'; 
  $arr['age'] = 25; 
  $arr['Skils'] = 'PHP, Laravel, JS, Jquery, Ajax, JSON etc.'; 
  $arr['Designation'] = 'Web Developer'; 

  echo $arr['name'];  /*It will print Rahul Rajput*/
  echo $arr['age']; /*It will print 25*/
?>

Associative Array में key Define करते समय कुछ बाते ध्यान में रखें।

  1. key का type आप string , integer,  boolean , float numbers भी दे सकते हैं , But  PHP दी गयी key के type के हिसाब से automatically दूसरे type में convert कर देता है जिसे type casting कहते हैं।
  2. हालाँकि array और object को आप as a key नहीं दे सकते हैं। Otherwise PHP warning generate करती है।

Associative Array Key Type Casting


1. string जो कि valid integer number या floating point number contain करती है PHP Floating numbers से Fractional part remove करके उसे Int में Cast कर देती है।

2. Boolean Values (true , false) में true को 1 और false को empty key में cast करती है। But इन values को access करते समय true key को true or 1 और false को false से ही access कर सकते हैं।

See Example

File : assoc_array4.php

Copy Fullscreen Close Fullscreen
<?php
  $arr_var = ['str_key'=> 'value1', 23 => 45, 56.58=>56, true=>false];
  echo"<pre>";
  print_r($arr_var);   
?>
Output
Array
(
    [str_key] => value1
    [23] => 45
    [56] => 56
    [1] => 
)

String जो कि Boolean value (true , false) या 1 or 1.5 है को Boolean value True या 1 में ही cast करती है। और PHP Associative Array में अगर हम same name की key देते हैं तो हमेशा last key => value ही  associate (bind) करती है।

See Example

File : assoc_array5.php

Copy Fullscreen Close Fullscreen
<?php
  $arr_var = ['1'=> '1.5', true => 45, 1.7=>56, 1=>'value 1'];
  echo"";
  print_r($arr_var);
?>
Output
Array
(
    [1] => value 1
)

तो देखा आपने की किस तरह से PHP type casting करती है , और same key होने की वजह से हमेशा last key=>value ही accept करती है।

Note - Empty String ('') और Null हमेशा null ही होंगे और इन values को आप null या '' से Access कर सकते हैं।

See Example

File : assoc_array6.php

Copy Fullscreen Close Fullscreen
<?php
  $arr_var = [''=> '1.5', null => 45];
  echo $arr_var['']; /*It will print 45*/
  echo $arr_var[null]; /*It will also print 45*/
?>

अब आपको PHP Associative Array के बारे में अच्छे से समझ आ गया होगा।

Hey ! I'm Rahul founder of learnhindituts.com. Working in IT industry more than 4.5 years. I love to talk about programming as well as writing technical tutorials and blogs that can help to others .... keep learning :)

Get connected with me - LinkedIn Twitter Instagram Facebook