উত্তর:
সহজ প্যাসি লেবু স্কিজি: http://www.php.net/manual/en/function.json-encode.php
<?php
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);
echo json_encode($arr);
?>
andyrusterholz at g-m-a-i-l dot c-o-m
পূর্বোক্ত পৃষ্ঠায় একটি পোস্ট রয়েছে যা জটিল নেস্টেড অ্যারেগুলি পরিচালনা করতে পারে (যদি এটি আপনার জিনিস থাকে)।
পিএইচপি এর নেটিভ ব্যবহার করুন json_encode
:
<?php
$arr = array(
array(
"region" => "valore",
"price" => "valore2"
),
array(
"region" => "valore",
"price" => "valore2"
),
array(
"region" => "valore",
"price" => "valore2"
)
);
echo json_encode($arr);
?>
আপডেট : মন্তব্যে আপনার প্রশ্নের উত্তর দিতে। আপনি এটি এর মতো করুন:
$named_array = array(
"nome_array" => array(
array(
"foo" => "bar"
),
array(
"foo" => "baz"
)
)
);
echo json_encode($named_array);
সাধারণ: কেবল একটি (নেস্টেড) পিএইচপি অ্যারে তৈরি করুন এবং json_encode
এটিতে কল করুন। সংখ্যাযুক্ত অ্যারেগুলি JSON তালিকাগুলিতে অনুবাদ করে ( []
), সহযোগী অ্যারে এবং পিএইচপি অবজেক্টগুলি বস্তুগুলিতে অনুবাদ করে ( {}
)। উদাহরণ:
$a = array(
array('foo' => 'bar'),
array('foo' => 'baz'));
$json = json_encode($a);
আপনি দেয়:
[{"foo":"bar"},{"foo":"baz"}]
পিএইচপি তে জসন তৈরি করার জন্য আপনার প্রতিবার যাওয়া উচিত সর্বোত্তম উপায় হ'ল প্রথমে এসোসিয়েটিভ অ্যারেতে রূপান্তর করা।
এর পরে কেবল ব্যবহার করে এনকোড করুন json_encode($associativeArray)
। আমি মনে করি পিএইচপি তে জসন তৈরির এটি সর্বোত্তম উপায় কারণ যখনই আমরা পিএইচপিতে ফলাফল ফর্ম এসকিএল ক্যোয়ারী আনতে পারি তখন বেশিরভাগ সময় আমরা fetch_assoc
ফাংশন ব্যবহার করে মান পেয়েছি যা একটি এসোসিয়েটিভ অ্যারেও ফেরত দেয়।
$associativeArray = array();
$associativeArray ['FirstValue'] = 'FirstValue';
... ইত্যাদি
তারপর.
json_encode($associativeArray);
এছাড়াও অ্যারের জন্য আপনি সংক্ষিপ্ত টিকা ব্যবহার করতে পারেন:
$arr = [
[
"region" => "valore",
"price" => "valore2"
],
[
"region" => "valore",
"price" => "valore2"
],
[
"region" => "valore",
"price" => "valore2"
]
];
echo json_encode($arr);
নীচে @tdammers দ্বারা প্রদত্ত সমাধানের সাহায্যে আমি এটি করতে সক্ষম হয়েছি। নিম্নলিখিত লাইনটি foreach লুপের ভিতরে স্থাপন করা হবে।
$array[] = array('power' => trim("Some value"), 'time' => "time here" );
এবং তারপরে জসন এনকোড ফাংশন সহ অ্যারেটিকে এনকোড করুন
json_encode(array('newvalue'=> $array), 200)
কেবল এই একক লাইনটি টাইপ করলে আপনাকে একটি জসন অ্যারে দেওয়া হবে,
echo json_encode($array);
সাধারণত আপনি json_encode
কোনও আইওএস বা অ্যান্ড্রয়েড অ্যাপ্লিকেশন থেকে ডেটা পড়তে ব্যবহার করেন। সুতরাং নিশ্চিত হয়ে নিন যে আপনি সঠিক জসন অ্যারে ছাড়া অন্য কোনও কিছু প্রতিধ্বনিত করছেন না।
<?php
$username=urldecode($_POST['log_user']);
$user="select * from tbl_registration where member_id= '".$username."' ";
$rsuser = $obj->select($user);
if(count($rsuser)>0)
{
// (Status if 2 then its expire) (1= use) ( 0 = not use)
$cheknew="select name,ldate,offer_photo from tbl_offer where status=1 ";
$rscheknew = $obj->selectjson($cheknew);
if(count($rscheknew)>0)
{
$nik=json_encode($rscheknew);
echo "{\"status\" : \"200\" ,\"responce\" : \"201\", \"message\" : \"Get Record\",\"feed\":".str_replace("<p>","",$nik). "}";
}
else
{
$row2="No Record Found";
$nik1=json_encode($row2);
echo "{\"status\" : \"202\", \"responce\" : \"604\",\"message\" : \"No Record Found \",\"feed\":".str_replace("<p>","",$nik1). "}";
}
}
else
{
$row2="Invlid User";
$nik1=json_encode($row2);
echo "{\"status\" : \"404\", \"responce\" : \"602\",\"message\" : \"Invlid User \",\"feed\":".str_replace("<p>","",$nik1). "}";
}
?>
আমি আমার কোডের জন্য ব্যবহার করার জন্য একটি অশোধিত এবং সাধারণ jsonOBJ ক্লাস তৈরি করেছি। পিএইচপি জাভাস্ক্রিপ্ট / নোড do মত json ফাংশন অন্তর্ভুক্ত না। আপনাকে আলাদাভাবে পুনরাবৃত্তি করতে হবে তবে এটি সহায়ক হতে পারে।
<?php
// define a JSON Object class
class jsonOBJ {
private $_arr;
private $_arrName;
function __construct($arrName){
$this->_arrName = $arrName;
$this->_arr[$this->_arrName] = array();
}
function toArray(){return $this->_arr;}
function toString(){return json_encode($this->_arr);}
function push($newObjectElement){
$this->_arr[$this->_arrName][] = $newObjectElement; // array[$key]=$val;
}
function add($key,$val){
$this->_arr[$this->_arrName][] = array($key=>$val);
}
}
// create an instance of the object
$jsonObj = new jsonOBJ("locations");
// add items using one of two methods
$jsonObj->push(json_decode("{\"location\":\"TestLoc1\"}",true)); // from a JSON String
$jsonObj->push(json_decode("{\"location\":\"TestLoc2\"}",true));
$jsonObj->add("location","TestLoc3"); // from key:val pairs
echo "<pre>" . print_r($jsonObj->toArray(),1) . "</pre>";
echo "<br />" . $jsonObj->toString();
?>
আউটপুট দেবে:
Array
(
[locations] => Array
(
[0] => Array
(
[location] => TestLoc1
)
[1] => Array
(
[location] => TestLoc2
)
[2] => Array
(
[location] => TestLoc3
)
)
)
{"locations":[{"location":"TestLoc1"},{"location":"TestLoc2"},{"location":"TestLoc3"}]}
পুনরাবৃত্তি করতে, একটি সাধারণ বস্তুতে রূপান্তর করুন:
$myObj = $jsonObj->toArray();
তারপর:
foreach($myObj["locations"] as $locationObj){
echo $locationObj["location"] ."<br />";
}
আউটপুট:
টেস্টলোক 1
টেস্টলোক 2
টেস্টলোক 3
সরাসরি অ্যাক্সেস:
$location = $myObj["locations"][0]["location"];
$location = $myObj["locations"][1]["location"];
একটি ব্যবহারিক উদাহরণ:
// return a JSON Object (jsonOBJ) from the rows
function ParseRowsAsJSONObject($arrName, $rowRS){
$jsonArr = new jsonOBJ($arrName); // name of the json array
$rows = mysqli_num_rows($rowRS);
if($rows > 0){
while($rows > 0){
$rd = mysqli_fetch_assoc($rowRS);
$jsonArr->push($rd);
$rows--;
}
mysqli_free_result($rowRS);
}
return $jsonArr->toArray();
}