Bir PostgresQL veritabanına bağlanan Yii2 modelini kullanıyorum. Bu modelin belirli niteliklerini kodlayan ve kod çözen bir davranışım var. Kodlamak/kod çözmek için Json yardımcı, Json::encode
ve Json::decode
yöntemlerini kullanıyorum.Encoded json PostgresQL tarafından bozuk/escaped?
Tablodaki sütun bir json tipindedir. veritabanında biter ne bir örnek:
'{"additional_tags":["#здрасте","#кафе"],"vk":"vk.com\/privetik"}'
EDIT:
"{\"additional_tags\":[\"#здрасте\",\"#кафе\"],\"vk\":\"vk.com\\\/privetik\"}"
Bir php diziye geri çözmesi denemek burada yerine döndü buydu Gel düşünmek, dize iyi görünüyor, ancak ::decode
yönteminin davranışı garip. Esas olarak, tek yaptığı, bir php dizisine dönüştürmek veya bir istisna atmak yerine, kaçış eğik çizgi kaldırmaktır.
Bunu düzeltmek için ne yapmalıyım? Herhangi bir geri bildirim için teşekkür ederiz.
Bana uygun görünüyor. Ne * bekliyorsun * iade edilecek? –
Bir php dizisi veya bir istisna. Aslında, şimdi bir jsonlint'e yapıştırdığımda, iyi görünüyor. Ama yine de, bir dizi yerine bir dize vermek için 'decode' yöntemi için çok garip bir davranış (evet, bu ikinci parametreyi geçiyorum). – nainy
Lütfen, neyi ne zaman ve neyi nasıl çıkış yaptığınızı nasıl çözdüğünüzün neyi çözdüğünüz hakkında daha ayrıntılı bilgi edinin. Tam olarak ne yaptığınızı ve ne zaman kaçtığınızı tamamen açık değil. Kaçmanın bazılarının sadece hata ayıklama için olup olmadığını net değil. – deceze