2016-04-04 2 views
-2

Я передавал массив в php для Javascript, используя json_encode и ajax. Кажется, что единственный способ заключается в использованииСкрыть вывод из echo json_encode

echo json_encode($var) 

который также выводит информацию о $ вар на странице из-за эхо. Есть ли простой способ скрыть выход? Мой код был как следует,

main.php

<?php 
include_once('testing.php'); 
?> 
<!DOCTYPE html> 
<html> 
<head> 
    <title></title> 
</head> 
<body> 
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> 
     <script type="text/javascript" src="testing.js"></script> 
</body> 
<html> 

testing.php

<?php 
$var=array('1','2','3','4','5'); 
echo json_encode($var); 
?>  

testing.js

$.ajax({ 
     url : './testing.php', 
     type : "GET", 
     dataType : 'json', 
     success : function (result) { 
      showstaff(result); 
     } 
    }); 

function showstaff(x){ 
    console.log(x); 
} 

Запуск main.php распечатайте массив ('1', '2', '3', '4', '5') на странице и показать массив в консоли, но мне нужно просто показать массив в консоли (т. Е. Скрыть результаты со страницы).

+1

' ' – adeneo

+0

@adeneo Он говорит, что использует AJAX. Это было бы, если бы он генерировал Javascript в PHP. – Barmar

+0

Что вы подразумеваете под «также печатает информацию о $ var»? Он не должен печатать ничего, кроме кодировки JSON. – Barmar

ответ

0

include_once('testing.php')main.php. Когда main.php будет отправлен в браузер, он будет загружен testing.js, который затем выполнит testing.php через звонок AJAX.

+0

Спасибо. Я фактически использовал функцию include_once в html, чтобы использовать php для html-дизайна. Я получил как результат консоли, так и распечатку страницы. – uPhone

+0

Нет смысла использовать 'echo json_encode()' в 'main.php'. JSON используется для ответа на AJAX, он не относится к обычной HTML-странице. – Barmar

+0

Я обновил ответ на основе вашего последнего изменения. – Barmar

0

Вы можете попробовать это:

<script type="text/javascript"> 
    var object = <?php echo json_encode($var); ?>; 
</script> 

Надеется, что это помогает, спасибо!

+0

Спасибо. Фактически часть echo json_ecnode ($ var) была записана в .php-файле, в то время как я попытался вызвать php-переменную $ var в отдельный .js-файл, используя ajax.Мне не совсем понятно, где должен вписываться ваш скрипт. – uPhone

Смежные вопросы