Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > จะสอบถามเรื่อง json ว่าจะมีวิธีแยกข้อความออกมายังไงบ้าง



 

จะสอบถามเรื่อง json ว่าจะมีวิธีแยกข้อความออกมายังไงบ้าง

 



Topic : 136147



โพสกระทู้ ( 0 )
บทความ ( 0 )



สถานะออฟไลน์




Array
(
[data] => key=IAfpK, age=58, key=WNVdi, age=64, key=jp9zt, age=47, key=0Sr4C, age=68, key=CGEqo, age=76, key=IxKVQ, age=79, key=eD221, age=29, key=XZbHV, age=32, key=k1SN5, age=88, key=4SCsU, age=65, key=q3kG6, age=33, key=MGQpf, age=13, key=Kj6xW, age=14, key=tg2VM, age=30, key=WSnCU, age=24, key=f1Vvz, age=46, key=dOS7A, age=72, key=tDojg, age=82, key=nZyJA, age=48, key=R8JTk, age=29, key=005Ot, age=66, key=HHROm, age=12, key=5yzG8, age=51, key=xMJ5D, age=38, key=TXtVu, age=82, key=Hz38B, age=84, key=WfObU, age=27, key=mmqYB, age=14, key=4Z3Ay, age=62, key=x3B0i, age=55, key=QCiQB, age=72, key=zGtmR, age=66, key=nlIN9, age=8, key=hKalB, age=50, key=Na33O, age=17, key=jMeXm, age=15, key=OO2Mc, age=32, key=hhowx, age=34, key=gLMJf, age=60, key=PblX6, age=66, key=8Vm5W, age=22, key=oZKd6, age=88, key=RXNfQ, age=25, key=3yy0p, age=64, key=FrQbL, age=80, key=vlUkk, age=55, key=DP8po, age=80, key=EroX6, age=84, key=3bsll, age=86, key=QhZjA, age=85, key=wm6uc, age=74, key=MC1FM,...
)

คือตอนนี้ข้อมูล จากไฟล์ json ออกมาเป็นชุดเดียวกัน ผมอยากจะแยกออกมาเป็น
ชุดๆ เช่น ( key=iAfpK , age=58 ) , ( key=WNVdi , age=64 )
ใช้เป็นภาษา php เลยสามารถแยกได้ไหมครับ



Tag : PHP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2021-05-31 01:34:57 By : byte00789 View : 1412 Reply : 3
 

 

No. 1



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


ที่คุณแสดงอยู่นี้ เรียกว่า array
รูปแบบการอ้างอิง $array['keyname'];

Code (PHP)
$array['keyname'] = 'ข้อมูลใหม่';
echo $array['keyname'];



ส่วนข้อมูลที่เป็น object
รูปแบบการอ้างอิง $object->keyname;
Code (PHP)
$object->keyname = 'ข้อมูลใหม่';
echo $object->keyname;







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-05-31 07:00:38 By : Chaidhanan
 


 

No. 2



โพสกระทู้ ( 4,169 )
บทความ ( 7 )

Hall of Fame 2012

สถานะออฟไลน์


ไปเรียงลำดับใน controller ให้ชัดเจนก่อน ตอนนี้ array ที่ select ออกมามันมั่วๆอยู่ครับ ในแต่ละรอบควรกำหนด key ให้มันชัดเจน

Example
<?php
$arr = array();

for($i=0; $i<4; $i++)
{
	 $data= array("key"=>'api-'.$i, "value"=>$i*2);
	
	array_push($arr,$data);
}

//print_r($arr);

$response = json_encode($arr);

print_r($response);

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-05-31 11:16:55 By : Genesis™
 

 
ใช้ฟังก์ชันก์จัดการ string เช่น explode...
เพราะ ข้อมูลฝั่งขวาของ => คือ value
value ที่เห็นจาก print_r เป็นก้อนเดียวของคีย์ data ซึ่งเป็น string

สังเกต array นี้มีสมาชิกแค่ 1 ที่มีชื่อ key เป็น "data" นั่นเอง




ตัวอย่าง (PHP)
// Rest API part
$data = [
	"data" => "key=IAfpK, age=58, key=WNVdi, age=64, key=jp9zt, age=47, key=0Sr4C, age=68, key=CGEqo, age=76, key=IxKVQ, age=79, key=eD221, age=29, key=XZbHV, age=32, key=k1SN5, age=88, key=4SCsU, age=65, key=q3kG6, age=33, key=MGQpf, age=13, key=Kj6xW, age=14, key=tg2VM, age=30, key=WSnCU, age=24, key=f1Vvz, age=46, key=dOS7A, age=72, key=tDojg, age=82, key=nZyJA, age=48, key=R8JTk, age=29, key=005Ot, age=66, key=HHROm, age=12, key=5yzG8, age=51, key=xMJ5D, age=38, key=TXtVu, age=82, key=Hz38B, age=84, key=WfObU, age=27, key=mmqYB, age=14, key=4Z3Ay, age=62, key=x3B0i, age=55, key=QCiQB, age=72, key=zGtmR, age=66, key=nlIN9, age=8, key=hKalB, age=50, key=Na33O, age=17, key=jMeXm, age=15, key=OO2Mc, age=32, key=hhowx, age=34, key=gLMJf, age=60, key=PblX6, age=66, key=8Vm5W, age=22, key=oZKd6, age=88, key=RXNfQ, age=25, key=3yy0p, age=64, key=FrQbL, age=80, key=vlUkk, age=55, key=DP8po, age=80, key=EroX6, age=84, key=3bsll, age=86, key=QhZjA, age=85, key=wm6uc, age=74"
];

$j = json_encode($data);

// ---------------------------------------------------------------------------------------------------------------------


// convert JSON data to array

$d = json_decode($j, true); // ได้ข้อมูลเหมือน จขกท.

//print_r($d);  // พิสูจน์ข้อมูลเหมือน จขกท.

//echo $d["data"];


// ตัวอย่างขั้นตอนการแยก string ด้วย delimiter(ตัวคั่น)
$dSplit = explode(", ", $d["data"]);

//print_r($dSplit);

// วนและเก็บข้อมูลตามเงื่อนไข
$c = [];
for ($i = 0; $i < count($dSplit); $i++) {
	if ($i % 2 !== 0) {
 		$c[] = [
        	"key" => explode("=", $dSplit[$i-1])[1],
            "age" => explode("=", $dSplit[$i])[1]
        ];   
    } 
}



print_r($c);
Array ( [0] => Array ( [key] => IAfpK [age] => 58 ) [1] => Array ( [key] => WNVdi [age] => 64 ) [2] => Array ( [key] => jp9zt [age] => 47 ) [3] => Array ( [key] => 0Sr4C [age] => 68 ) ... [50] => Array ( [key] => wm6uc [age] => 74 ) )

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-05-31 12:26:45 By : พญามัจจุราช
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : จะสอบถามเรื่อง json ว่าจะมีวิธีแยกข้อความออกมายังไงบ้าง
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่