Geçerli JSON baskı biçiminde JSON dönüştürme

0 Cevap php

I have a text file that is formatted like JSON, but in a print/view friendly format and I want to convert that string to valid JSON. Basically, I want to read the file using PHP5 and call json_decode to deserialize the string. But, json_decode is not able to parse the "print-friendly" json string.

Ben hata 4 Geçersiz veya hatalı JSON alıyorum.

Başkası benim gibi benzer bir sorunu varmış gibi görünüyor: http://stackoverflow.com/questions/2410342/php-json-decode-returns-null-with-valid-json

Ben json dosyası yazmak için notepad + + kullanıyorum.

Yani, nasıl dönüştürebilirsiniz

FROM:

{
    "data": [
        {
            "thumbImg": "thumbImg",
            "street": "street",
            "city": "Fort Worth",
            "state": "Texas",
            "zip": "76192-0001",
            "url": "url"
        }
    ]
}

TO:

{"data":[{"thumbImg": "thumbImg", "street": "street", "city": "Fort Worth", "state": "Texas", "zip": "76192-0001", "url": "url"}]

Ben bile şu yaparak çalıştı:

<?php
$filename = "links.json";
$file = fopen($filename, "r");

$lines = file($filename);

$data = "";
;
foreach ($lines as $line_num => $line) {
    $formatted = trim($line);
    $formatted = str_replace("\r", "", $formatted);
    $formatted = str_replace("\n", "", $formatted);
    $data .= $formatted;        
}

$json = json_decode($data, true);
?>

Ben çıkan json dize var_dump yaptım ve http://jsonlint.com/ o kadar geçerli json işaretlenmiş; Ancak, json_decode nedense json dize serisini mümkün değildir.

Teşekkür ederiz!

SOLUTION I set the encoding of the text file to UTF-8 without BOM and it works fine now. thank you all!

0 Cevap