Çokbaytlı karakterlerle jscon_encode iş yapmak nasıl?

2 Cevap php
echo '<a title=' .json_encode("按时间先后进行排序") . '>test</a>';

Yukarıdaki "\ u6309 \ u65f6 \ u95f4 \ u5148 \ u540e \ u8fdb \ u884c \ u6392 \ u5e8f" gibi bir şey üretecek ve bir karmaşa!

2 Cevap

Hayır, bu JSON bulunuyor. JSON kodlayıcı olduğu gibi-(doublequote, ters eğik çizgi, ya da kontrol karakterleri hariç) karakterleri kopyalamak veya \uxxxx gösterimi kullanarak onları kodlamak için ücretsizdir. Yukarıdaki güzel değil bile Yani, geçerli bir JSON var ve dize doğru bir şekilde deşifre edilmesi sağlayacaktır.

title öznitelik değeri JavaScript olarak kabul edilmez. Sadece bir JavaScript / JSON ifadesi içine bir PHP türünü dönüştürmek için json_encode kullanın.

Bunun yerine bu deneyin:

echo '<a title="按时间先后进行排序">test</a>';

Ama sizin başlık metin olarak aynı kodlama ile belgenizi göndermek gerekir.