我正在尝试将文本从JSON保存到MYSQL并抛出PHP(Codeigniter)。
文字包含特殊字符,例如\n
,/
...
在数据库中,这些字符被解释并消失。
我想用这些字符保存文本而无需解释。
JQUERY:
var file = $('input[type=file]')[0].files[0];
var reader = new FileReader();
reader.onload = function(e) {
file_content = reader.result;
//Send data to server
var formData = new FormData();
formData.append('file', $('input[type=file]')[0].files[0]);
formData.append('file_content', file_content);
$.ajax({
type : 'POST',
url : '<?= $url_post_file ?>',
data : formData,
dataType : 'JSON',
processData: false,
contentType: false,
success: function(data){
},
控制器
$json = $_POST['file_content'];
$jsonIterator = new RecursiveIteratorIterator(
new RecursiveArrayIterator(json_decode($json , TRUE)),
RecursiveIteratorIterator::SELF_FIRST);
foreach ($jsonIterator as $key => $val) {
if(!is_array($val)) {
if($key == 'text'){
$this->Text_model->insert($val);
}
}
}
如果$json
包含
{"text" : "Hello\nworld"}
在数据库中,我们发现:
Hello
world
但是我需要保留\n
并保存Hello\nworld
,而无需换行。
\
和/
的情况相同。
我该怎么办?