I have a string:
<b>08-14-2018 09:24:09</b>,192.168.0.1,{"i":"2018-001370","ln":"FIRST","fn":"TEST","a":"570.00","d":"08\/14\/2018 09:23:00","ca":"550.00","ch":"20.00","chi":"s"},{"terapay_response":{"code":-106,"description":"Missing Check Amount Or Check Info"}}
and I want to match all comma outside the curly braces.
My desired output would be:
[0] : <b>08-14-2018 09:24:09</b>
[1] : 192.168.0.1
[2] : {"i":"2018-001370","ln":"FIRST","fn":"TEST","a":"570.00","d":"08\/14\/2018 09:23:00","ca":"550.00","ch":"20.00","chi":"s"}
[3] : {"terapay_response":{"code":-106,"description":"Missing Check Amount Or Check Info"}}
I tried :
preg_match_all("/\((?:[^{}]|(?R))+\)|[^{},\s]+/", $line, $out);
but the output is different :
[0] : "<b>08-14-2018"
[1] : "09:24:09</b>"
[2] : "192.168.0.1"
[3] : ""i":"2018-001370""
[4] : ""ln":"FIRST""
[5] : ""fn":"TEST""
[6] : ""a":"570.00""
[7] : ""d":"08\/14\/2018"
[8] : "09:23:00""
[9] : ""ca":"550.00""
[10] : ""ch":"20.00""
[11] : ""chi":"s""
[12] : ""terapay_response":"
[13] : ""code":-106"
[14] : ""description":"Missing"
[15] : "Check"
[16] : "Amount"
[17] : "Or"
[18] : "Check"
[19] : "Info""
Thank you.