How to convert large json file to php array? [duplicate] - php

This question already has answers here:
Processing large JSON files in PHP
(7 answers)
Closed 8 years ago.
Some API is providing json file of 88MB. I need to store in some of its value in database.
$cURL="url here"
$str = file_get_contents($cURL);
$str = json_decode($str);
echo '<pre>';
print_r($str);
this code is not working because file size is too large. I need to convert that json file to a php array. I am not able to parse this file. Any help from anyone?

Quite complicated if the problem should be solved during the query. Caching the preliminary data on the filesystem then separate the values into chunks would be able to solve the issue.

Related

json_decode for PHP joomla [duplicate]

This question already has answers here:
How to display json values that are in 2nd level of a multi-dim array?
(3 answers)
How to extract and access data from JSON with PHP?
(1 answer)
Closed 3 years ago.
Need help. I am having trouble solving this json thingy. here's what is on my database
{"img":["images/logo2.png","images/logo.png"]}
I need to decode this images and show it like this
images/logo2.png
images/logo.png
A quick google search will give you this link: json_decode.
$someJson = '{"img":["images/logo2.png","images/logo.png"]}';
$encodeJson = json_decode($someJson, true);
echo $encodeJson['img'][0]; //images/logo2.png
echo $encodeJson['img'][1]; //images/logo.png
Hint: Having a look at the PHP-Manual is not prohibited. ;)
Maybe select your entry from database and put in a variable called $dataBaseEntry then copy paste this code?
$decoded = json_decode($dataBaseEntry, true); //true for associated array
$logos = $decoded['img'];
print_r($logos)

Decoding the Yahoo Finance JSON Code [duplicate]

This question already has answers here:
How to extract and access data from JSON with PHP?
(1 answer)
How can I access an array/object?
(6 answers)
Closed 5 years ago.
So I found this URL to fetch data but I cant seem to access the JSON of what I need. Here is my code so far.
<?php
$url = "https://query1.finance.yahoo.com/v7/finance/options/AAPL";
$result = file_get_contents($url);//allow_url_fopen turned on in php. ini file
// decode the json
$resp = json_decode($result, true);
print_r($resp['optionChain']['result']['expirationDates']);
?>
I took the url and used a site to neatly format the code.
https://jsonformatter.curiousconcept.com/
But still no luck. Any suggestions?
P.S I have used the Google API code and Lottery API codes in JSON format in the past but I cant seem to get this one lol Weird huh

how to decode json file in php [duplicate]

This question already has an answer here:
How to extract and access data from JSON with PHP?
(1 answer)
Closed 6 years ago.
i am trying do decode this json file
{"name":"apple","price":1.2312312331231232e 23,"qty":-1,"num":5,"color":"","category":"FRUITS","_id":"VZbGneNygMKYCijr"}\n{"name":"orange","price":12,"qty":-7,"num":2,"color":"","category":"FRUITS","_id":"d892zf2ccyNlPAZM"}\n{"name":"apple","price":12,"qty":-5,"num":4,"color":"","category":"FRUITS","_id":"dja3UQ7vBUs1xBHw"}\n{"name":"apple","price":12,"qty":-7,"num":1,"color":"","category":"FRUITS","_id":"yZc1lMB0SKoSIsxw"}\n{"name":"apple","price":12,"qty":-8,"num":3,"color":"","category":"FRUITS","_id":"yyPn4UcDin6uAY52"}\n
There are many ways to read a file, let's say file_get_contents()
$file = file_get_contents('FILE WITH FULL PATH');
$decoded = json_decode ($file);
var_dump($decoded);
You are OK.

Get data from a json array in PHP [duplicate]

This question already has answers here:
What kind of string is this? How do I unserialize this string? [duplicate]
(2 answers)
Closed 6 years ago.
I receive a really long json array like following:
a:2:{s:18:"_gravity_form_lead";a:227:{s:3:"3.2";s:0:"";s:3:"3.3";s:5:"Name";s:3:"3.4";s:0:"";s:3:"3.6";s:1:"T";s:3:"3.8";s:0:"";i:4;s:14:"123456789-3505";i:6;s:0:"";s:3:"7.1";s:0:"";s:3:"9.2";s:0:"";s:3:"9.3";s:0:"";s:3:"9.4";s:0:"";s:3:"9.6";s:0:"";s:3:"9.8";s:0:"";i:12;s:0:"";i:10;s:0:"";i:11;s:0:"";s:4:"13.1";s:0:"";s:4:"13.2";s:0:"";s:4:"13.3";s:0:"";s:4:"13.4";s:0:"";s:4:"13.5";s:0:"";s:4:"13.6";s:0:"";i:14;s:0:"";i:15;s:0:"";i:16;s:0:"";i:84;s:0:"";i:85;s:0:"";i:18;s:0:"";i:19;s:0:"";i:20;s:0:"";i:21;s:0:"";i:22;s:0:"";i:88;s:0:"";i:89;s:0:"";i:90;s:0:"";i:91;s:0:"";i:92;s:0:"";i:93;s:0:"";i:94;s:0:"";i:96;s:0:"";i:97;s:0:"";i:98;s:0:"";i:102;s:0:"";i:99;s:0:"";i:100;s:0:"";i:101;s:0:"";i:104;s:0:"";i:105;s:0:"";i:106;s:0:"";i:107;s:0:"";i:108;s:0:"";i:109;s:0:"";i:110;s:0:"";i:112;s:0:"";i:113;s:0:"";i:114;s:0:"";i:115;s:0:"";i:116;s:0:"";i:117;s:0:"";i:118;s:0:"";s:4:"28.1";s:0:"";s:4:"28.2";s:0:"";s:4:"28.3";s:0:"";s:4:"28.4";s:0:"";s:4:"28.5";s:0:"";s:4:"28.6";s:0:"";i:29;s:0:"";i:30;s:0:"";s:4:"33.1";s:0:"";s:4:"33.2";s:0:"";s:4:"33.3";s:0:"";s:4:"33.4";s:0:"";s:4:"33.5";s:0:"";s:4:"33.6";s:0:"";i:35;s:0:"";i:36;s:0:"";i:37;s:0:"";i:38;s:0:"";i:41;s:0:"";s:4:"39.1";s:0:"";s:4:"39.2";s:0:"";s:4:"39.3";s:0:"";s:4:"39.4";s:0:"";s:4:"39.5";s:0:"";s:4:"39.6";s:0:"";i:121;s:0:"";i:122;s:0:"";i:123;s:0:"";i:124;s:0:"";i:126;s:0:"";s:5:"125.1";s:0:"";s:5:"125.2";s:0:"";s:5:"125.3";s:0:"";s:5:"125.4";s:0:"";s:5:"125.5";s:0:"";s:5:"125.6";s:0:"";i:128;s:0:"";i:129;s:0:"";i:130;s:0:"";i:131;s:0:"";i:132;s:0:"";s:5:"133.1";s:0:"";s:5:"133.2";s:0:"";s:5:"133.3";s:0:"";s:5:"133.4";s:0:"";s:5:"133.5";s:0:"";s:5:"133.6";s:0:"";i:135;s:0:"";i:136;s:0:"";i:137;s:0:"";i:138;s:0:"";i:139;s:0:"";s:5:"140.1";s:0:"";s:5:"140.2";s:0:"";s:5:"140.3";s:0:"";s:5:"140.4";s:0:"";s:5:"140.5";s:0:"";s:5:"140.6";s:0:"";i:142;s:0:"";i:143;s:0:"";i:144;s:0:"";i:145;s:0:"";i:146;s:0:"";i:149;s:0:"";i:150;s:0:"";i:151;s:0:"";i:152;s:0:"";i:153;s:0:"";s:5:"147.1";s:0:"";s:5:"147.2";s:0:"";s:5:"147.3";s:0:"";s:5:"147.4";s:0:"";s:5:"147.5";s:0:"";s:5:"147.6";s:0:"";i:155;s:0:"";i:156;s:0:"";i:157;s:0:"";i:158;s:0:"";i:159;s:0:"";s:5:"160.1";s:0:"";s:5:"160.2";s:0:"";s:5:"160.3";s:0:"";s:5:"160.4";s:0:"";s:5:"160.5";s:0:"";s:5:"160.6";s:0:"";i:162;s:0:"";i:163;s:0:"";i:164;s:0:"";i:165;s:0:"";i:166;s:0:"";s:5:"167.1";s:0:"";s:5:"167.2";s:0:"";s:5:"167.3";s:0:"";s:5:"167.4";s:0:"";s:5:"167.5";s:0:"";s:5:"167.6";s:0:"";i:169;s:0:"";i:170;s:0:"";i:171;s:0:"";i:172;s:0:"";i:173;s:0:"";s:5:"174.1";s:0:"";s:5:"174.2";s:0:"";s:5:"174.3";s:0:"";s:5:"174.4";s:0:"";s:5:"174.5";s:0:"";s:5:"174.6";s:0:"";i:176;s:0:"";i:177;s:0:"";i:178;s:0:"";i:179;s:0:"";i:180;s:0:"";s:5:"181.1";s:0:"";s:5:"181.2";s:0:"";s:5:"181.3";s:0:"";s:5:"181.4";s:0:"";s:5:"181.5";s:0:"";s:5:"181.6";s:0:"";i:40;s:0:"";i:43;s:2:"Ne";i:184;s:0:"";i:185;s:0:"";i:48;s:0:"";i:187;s:0:"";i:188;s:0:"";i:189;s:0:"";i:191;s:0:"";i:192;s:0:"";i:193;s:0:"";i:195;s:0:"";i:196;s:0:"";i:197;s:0:"";i:199;s:0:"";i:200;s:0:"";i:201;s:0:"";i:44;s:0:"";i:45;s:0:"";i:50;s:2:"Ne";i:51;s:2:"Ne";i:52;s:2:"Ne";i:53;s:0:"";i:55;s:0:"";i:56;s:0:"";i:57;s:0:"";i:58;s:0:"";i:59;s:0:"";i:60;s:2:"Ne";i:61;s:2:"Ne";i:62;s:0:"";i:69;s:2:"Ne";i:70;s:0:"";i:71;s:0:"";i:72;s:0:"";i:77;s:0:"";i:78;s:0:"";i:79;s:0:"";i:80;s:0:"";i:81;s:0:"";i:203;s:0:"";i:204;s:27:"56f26f5862fb85.90873638.png";}s:18:"_gravity_form_data";a:14:{s:2:"id";s:1:"1";s:13:"display_title";b:0;s:19:"display_description";b:0;s:25:"disable_woocommerce_price";s:3:"yes";s:12:"price_before";s:0:"";s:11:"price_after";s:0:"";s:20:"disable_calculations";s:3:"yes";s:22:"disable_label_subtotal";s:3:"yes";s:21:"disable_label_options";s:2:"no";s:19:"disable_label_total";s:3:"yes";s:14:"disable_anchor";s:2:"no";s:14:"label_subtotal";s:8:"Subtotal";s:13:"label_options";s:7:"Options";s:11:"label_total";s:5:"Total";}}
I need to extract the name of the png which in this array is: 56f26f5862fb85.90873638.png. The value is the following context:
i:204;s:27:"56f26f5862fb85.90873638.png";
It would be really convenient if I could look the name after the 204 which is always fixec.
Any guidance or suggestion as for how to solve it is much appreciated.
That is a serialized PHP value, created using the serialize() function.
You can unserialize it using the unserialize() function:
$data = unserialize('a:2:{s:18:"_gravity [...] tal";s:5:"Total";}}');

Using PHP to write query string values to a .txt file and save [duplicate]

This question already has answers here:
Create or write/append in text file
(7 answers)
Closed 6 years ago.
I am able to take the values from a URL's query string and store them in some variables, however I would also like to print or write these values to a single line in a .txt document, and save that document in a given directory on the server.
Each time the page is loaded with a new query string, a new line will be added to that .txt file with the string values, and the file re-saved.
Can this be done? Struggling to find answers to this in my searches.
Many thanks in advance.
As simple as:
$url_value = "This is some value\n";
file_put_contents("/your/filename/here.txt", $url_value, FILE_APPEND );
See file_put_contents() for more information.

Categories