2010-03-11 42 views
9

db aygıtımda kayıtlı bir json dizesi var. Bu satırın kimliğiyle birlikte javascript işlevine (ajax çağrısı) geçmek için db'den aldığımda, json_encoding (sorgu sonucu dizisi) ve js'ye geçiriyorum. ama json_encode zaten json dizgime istenmeyen eğik çizgi ekliyor. nasıl kaçar. id'i de dizideki ikinci eleman olarak geçmem gerektiğini hatırlıyorum.json_encode İstenmeyen eğik çizgi ekleniyor

db benim json dize gibidir:

{"field":"City","term":"Hawaiian Gardens, CA"} 

ve kimliği 5.

böylece PHP sorgu sonucu dizidir ki geçerli:

json_encode sonra çok
$savedVal['id'] = 5 
$savedVal['object_str'] = {"field":"City","term":"Hawaiian Gardens, CA"} 

($ savedVal) ideal olarak şöyle olmalıdır:

{"id":"5","object_str":{"field":"City","term":"Hawaiian Gardens, CA"}} 
.210

ama diziyi json_encoding bana verir:

{"id":"5","object_str":"{\"field\":\"City\",\"term\":\"Hawaiian Gardens, CA\"}} 

ekstra kesikler ve object_str değer etrafında çok tırnak. Lütfen bana yardım edin.

Teşekkür ederiz.

cevap

18

JSON üzerinde JSON_encode kullanıyorsunuz - bu nedenle çifte kaçma gerçekleşir. Bu deneyin:

{"id":5,"object_str":{"field":"City","term":"Hawaiian Gardens, CA"}} 
+0

Teşekkür

$savedVal['id'] = 5 ; $savedVal['object_str'] = json_decode('{"field":"City","term":"Hawaiian Gardens, CA"}'); echo json_encode($savedVal); 

Çıktı. İşe yarıyor!!!! – Prashant

İlgili konular