5

因为我使用的是 json 和 ajax,所以它注释我没有在有效的 json 上传递值。

是否可以仅返回 var dump 的值而不将其回显,并将其输出到浏览器。

例如

$data = 'my_data';
get_var_dump($data);//not real func
//should do nothing.
$get['data'] = get_var_dump($data);
$get['error']= false;
echo json_encode($get);
//should be something like 
//{"data,"string(7) my_data","error":false}

或 print_r 等价物我只想分配给一个 var 而不是输出它。

或者,如果您是 wordpress 粉丝,那么 bloginfo('url'); 之间的区别 和 get_bloginfo('url'); 应该让它更容易:)

4

4 回答 4

15

你当然可以!为此,您将需要两个 PHP 缓冲区函数:ob_startob_get_clean. 第一个开始缓冲,第二个是获取值和清理缓冲区。例子:

ob_start();
var_dump($array);
$value = ob_get_clean();
于 2011-04-14T15:47:42.617 回答
11

print_r可以选择第二个参数。当设置为 true 时,它​​将转储作为数组返回,而不是显示它。

http://us2.php.net/print_r

于 2011-04-14T15:47:44.207 回答
6

检查var_export()功能: http:
//php.net/manual/en/function.var-export.php

您将一个变量和第二个布尔参数传递给它,如果第二个参数为真,则函数返回一个带有变量表示的字符串:

<?php
$a = array(1, 2);
$dump = var_export($a, true);

print $dump;
?>

$dump包含类似的东西

array (
  0 => 1,
  1 => 2,
)
于 2011-04-14T15:48:16.810 回答
3

每个人都击败了我:var_export()

于 2011-04-14T15:49:58.767 回答