将PHP输出为JSON的变量

时间:2011-07-14 04:06:51

标签: php json

file1.php
<?php
$listMenu=array('Menu #1','Menu #2','Menu #3');
?>

<div class="wjNavButton"><a><?php echo($listMenu[0]); ?></a></div>
<div class="wjNavButton"><a><?php echo($listMenu[1]); ?></a></div>
<div class="wjNavButton"><a><?php echo($listMenu[2]); ?></a></div>


file2.php
$buff=include('file1.php');
$rest='[{sectionId:"LT", sectionType:"menu", sectionData="'.$buff.'"}]';
echo($rest);

result:
[{sectionId:"LT", sectionType:"menu", sectionData="1"}]

question:
- is this possible to put result of php page in variable?
- how i can result as output of file1.php and not sectionData="1"?

2 个答案:

答案 0 :(得分:1)

file2.php

$buff=include('file1.php');
$rest='[{sectionId:"LT", sectionType:"menu", sectionData="'.$buff.'"}]';
echo($rest);

看起来你需要关于该字符串的结束报价。

答案 1 :(得分:1)

ob_start();
include 'file1.php';
$buff = ob_get_clean();

$data = array(array('sectionId' => 'LT', 'sectionType' => 'menu', 'sectionData' => $buff));
echo json_encode($data);
  • 您无法使用$buff = include获取网页内容。想象一下include复制并将一个文件的内容粘贴到另一个文件中。它没有返回任何东西。 (除非您以不同的方式构建包含文件,否则请阅读the documentation。)
  • 您可以使用output buffering来捕获和获取内容。
  • 永远不要编写自己的JSON,使用json_encode确保语法正确并正确转义值。