PERL рднрд╛рд╖рд╛ рдореЗрдВ JSON рдкреНрд░рд╛рд░реВрдк рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ

PERL рднрд╛рд╖рд╛ рдореЗрдВ JSON рдкреНрд░рд╛рд░реВрдк рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВред


JSON рдкреНрд░рд╛рд░реВрдк

JSON (рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдиреЛрдЯреЗрд╢рди) рдПрдХ рдкрд╛рда рдбреЗрдЯрд╛ рдкреНрд░рд╛рд░реВрдк рд╣реИред рдпрд╣ XML рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, JSON рдФрд░ XML рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдХрд┐рд╕реА рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдЬрд░реНрдирд▓ рд╕реНрдЯреВрдбреЗрдВрдЯреНрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдЫрд╛рддреНрд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдиреАрдЪреЗ рджреА рдЧрдИ рд╕реВрдЪреА рдПрдХреНрд╕рдПрдордПрд▓ рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛ рднрдВрдбрд╛рд░рдг рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рджрд░реНрд╢рд╛рддреА рд╣реИред
<student> <name></name> <surname></surname> <faculty></faculty> <group>-51</group> <adress> <city></city> <street></street> <house>2</house> <apartment>14</apartment> </adress> </student> <student> <name></name> <surname></surname> <faculty></faculty> <group>-72</group> <adress> <city></city> <street></street> <house>12</house> <apartment>24</apartment> </adress> </student> 


JSON рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдПрдХ рд╕рдорд╛рди рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА:
 [ { "name": "", "surname": "", "faculty": "", "group": "-72", "adress": { "city": "", "street": "", "house": "12", "apartment": "24" } }, { "name": "", "surname": "", "faculty": "", "group": "-51", "adress": { "city": "", "street": "", "house": "2", "apartment": "14" } } ] 

рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдмрдпрд╛рди

JSON рдкреНрд░рд╛рд░реВрдк рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рд╕реЗ рдкрд░реНрд▓ рднрд╛рд╖рд╛ рдореЗрдВ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдпрд╣ JSON рдкреНрд░рд╛рд░реВрдк рд╕рдВрд░рдЪрдирд╛ рд╕реЗ рдбреЗрдЯрд╛ рдкрд░ рдХрд┐рдП рдЧрдП рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИред
JSON рдФрд░ рдкрд░реНрд▓

JSON рдкреНрд░рд╛рд░реВрдк рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, JSON-2.53 рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
 use JSON; 

рдбрд┐рдХреЛрдбрдЬрд╕рди рд╕рдмрд░реВрдЯреАрди, рдиреАрдЪреЗ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рдЬреЗрдПрд╕рдПрди рдкреНрд░рд╛рд░реВрдк рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдкрд░реНрд▓ рднрд╛рд╖рд╛ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ (рдПрд░реЗрд╕ рдФрд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдбрд┐рдЧреНрд░реА рдХреЗ рдШреЛрдВрд╕рд▓реЗ рдХреЗ рд╢рд┐рдХрд╛рд░ рд╕реЗ рдмрдирд╛) рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
 sub decodeJSON { my ($JSONText) = @_; my $hashRef = decode_json($JSONText); return @$hashRef; } 

рдПрдиреНрдХреЛрдбрд┐рдВрдЧрдЬреЙрди рд░реВрдЯреАрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдкрд░реНрд▓ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЛ JSON рдкреНрд░рд╛рд░реВрдк рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
 sub encodeJSON{ my($arrayRef) = @_; $JSONText= JSON->new->utf8->encode($perl_scalar); return $JSONText; } 

рдирд┐рд╖реНрдХрд░реНрд╖

рдкрд░рд┐рдгрд╛рдо рдПрдХ рдкрд░реНрд▓ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд▓рд┐рдЦреА рдЬрд╛рдПрдЧреА:
тАв рдЖрдЗрдЯрдо рдЬреЛрдбрд╝рдирд╛;
тАв рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╣рдЯрд╛рдирд╛;
тАв рд╕рдВрдкрд╛рджрди рддрддреНрд╡ рдбреЗрдЯрд╛;
тАв рдЖрд╡рд╢реНрдпрдХ рд╡рд╕реНрддреБ рдХреА рдЦреЛрдЬ рдХрд░реЗрдВ;


Source: https://habr.com/ru/post/In205130/


All Articles