Tôi đang tạo chuỗi JSON từ một mảng PHP. Tôi đã mã hóa nó bằng cách sử dụng json_encode()
.Chuỗi JSON PHP, thoát Dấu ngoặc kép cho đầu ra JS
$data = array(
'title' => 'Example string\'s with "special" characters'
);
$data = json_encode($data);
$data
được cục bộ sử dụng wp_localize_script()
và có thể truy cập thông qua một data
biến toàn cầu.
Trong tập tin JS Tôi có thể truy cập thông tin bằng cách như sau:
var data = data.replace(/"/g, '"'),
jsonData = jQuery.parseJSON(data);
console.log(jsonData);
Điều này dẫn đến công suất:
{ "title":"Example string's with "special" characters" }
Ra, vào mà kết quả vào http://jsonlint.com/ trả về một lỗi. Loại bỏ các dấu ngoặc kép xung quanh "đặc biệt" xác nhận chuỗi.
Cách tốt nhất để tạo chuỗi JSON từ PHP và thoát đúng cách để sử dụng trong tệp JS là gì?
Vì vậy, bạn không thể mong đợi json_encode tạo ra một json hợp lệ? Tôi sẽ không thuê nhà phát triển này –
@Joti Bạn phải là người mới đối với PHP, sau đó: P –
câu trả lời này, mặc dù được đánh dấu là được chấp nhận, không trả lời câu hỏi. OP hỏi: cách tốt nhất để tạo chuỗi JSON từ PHP là gì và thoát đúng cách để sử dụng trong tệp JS?Câu trả lời này nói rằng bạn cần tự mình thoát ra nhưng không cung cấp cách tốt nhất để làm điều này. – Alex