php var_dump equivelant或print_r

Val*_*Val 4 php var-dump

因为我正在使用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}
Run Code Online (Sandbox Code Playgroud)

或者print_r等价物我只想分配给var而不是输出它.

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

Rob*_*bik 12

你当然可以!要做到这一点,你需要两个PHP缓冲区函数:ob_startob_get_clean.第一个开始缓冲,第二个是获得值和清理缓冲区.例:

ob_start();
var_dump($array);
$value = ob_get_clean();
Run Code Online (Sandbox Code Playgroud)

  • 不理解downvotes.因为`var_export()`,`var_dump()`和`print_r()`的格式略有不同,所以至少应该提到这个格式. (3认同)
  • Downvoters:请注意,这是*print_r(http://us3.php.net/manual/en/function.print-r.php)和[var_export](http://us3.php. net/manual/en/function.var-export.php)在内部工作以返回而不是输出.所以如果你想要不同格式的`var_dump`(包括类型和大小),这实际上是正确的方法...... (2认同)

Mr.*_*ama 9

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

http://us2.php.net/print_r

  • 这就是我一直在寻找的......所以习惯了`print_r`的正常方式我什至不知道它存在但是thnx :) (2认同)

Dav*_*ano 6

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

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

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

print $dump;
?>
Run Code Online (Sandbox Code Playgroud)

$dump 包含类似

array (
  0 => 1,
  1 => 2,
)
Run Code Online (Sandbox Code Playgroud)