i want to store associative array into a variable a as a string, and then convert the variable into array.
$var='"electirc_bill"=>array(
"type" => "number",
"required"=>"yes"
),
"electirc_bill_per"=>array(
"type" => "number",
"required"=>"yes"
),
"gass_bill"=>array(
"type" => "number",
"required"=>"yes"
)
)';
var_dump($var);
Use serialize
and unserialize
.
Convert the array to string:
$string = serialize($array);
Convert it back to an array:
$array = unserialize($string);
Edit: Based on your comment you seem to already have the array stored as a string and want to be able to convert it to an array. For that I would use eval
but be cautious when using it with any user input as it could lead to security vulnerabilities within your code.
I've made a small example using your code here: http://codepad.org/rPNXPBlW
$var = '$array_var = array("One" => array("1.1", "1.2"), "Two" => array("2.1", "2.2"));';
eval($var);
echo $array_var['One'][0]; // Shows 1.1
Use like below,
$json_str = json_encode($var);
first then use json_decode($json_str); where required
// save
file_put_contents('file.json', json_encode($array));
// load
$array = json_decode(file_get_contents('file.json'), true);
You can use serialize and unserialize like this:
<?
$var=array("electirc_bill"=>array(
"type" => "number",
"required"=>"yes"
),
"electirc_bill_per"=>array(
"type" => "number",
"required"=>"yes"
),
"gass_bill"=>array(
"type" => "number",
"required"=>"yes"
)
);
var_dump($var);
$string = serialize($var);
var_dump($string);
$array = unserialize($string);
var_dump($array );
?>
Here i give suggestion to use this array will meet your requirement
$name=array('parent1'=>array('childone'=>'harish','childtwo'=>'vignesh'),'parent2'=>array('childone'=>'our children'));
echo "<pre>";
print_r($name);
foreach($name as $parents)
{
foreach($parents as $child)
{
echo "<pre>"; print_r($child);
}
}