> php教程 > php手册 > var_export函数的使用方法,var_export使用方法

var_export函数的使用方法,var_export使用方法

WBOY
풀어 주다: 2016-06-13 09:20:01
원래의
974명이 탐색했습니다.

var_export函数的使用方法,var_export使用方法

var_export() 函数返回关于传递给该函数的变量的结构信息,它和 var_dump() 类似,不同的是其返回的表示是合法的 PHP 代码。var_export必须返回合法的php代码, 也就是说,var_export返回的代码,可以直接当作php代码赋值个一个变量。 而这个变量就会取得和被var_export一样的类型的值。看下面一个简单的例子:

<?php
	
	$arr = array ( 1 , 2 , array ( "apple" , "banana" , "orange" ));  
	var_export ( $arr );  
	
?>
로그인 후 복사

程序输出:

array (
  0 => 1,
  1 => 2,
  2 => 
  array (
    0 => 'apple',
    1 => 'banana',
    2 => 'orange',
  ),
)
로그인 후 복사

注意,上面的输出是合法的PHP代码。假如用var_dump(),则输出为:

array(3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  array(3) {
    [0]=>
    string(5) "apple"
    [1]=>
    string(6) "banana"
    [2]=>
    string(6) "orange"
  }
}
로그인 후 복사

可以通过将函数的第二个参数设置为 TRUE,从而返回变量的表示。

<?php
	
	$v = 'nowamagic';  
	$rs = var_export ( $v, TRUE );  
	
	echo $rs;
?>
로그인 후 복사

程序运行结果:

'nowamagic'
로그인 후 복사

注意两点:

  • var_export()会一直保留着结构化形式存储数据.
  • 但是特别请记住:此时的变量值的类型已是字符串了($var),不能再以数组的方式取出里面的值来。

在PHPCMS的源码里,可以看到很多配置的参数都用数组记录的,包括它们的频道、内容等等。

function cache_write($file, $string, $type = 'array')  
{  
    if(is_array($string))  
    {  
        $type = strtolower($type);  
        if($type == 'array')  
        {  
            $string = "<?php\n return ".var_export($string,TRUE).";\n?>";  
        }  
        elseif($type == 'constant')  
        {  
            $data='';  
            foreach($string as $key => $value) $data .= "define('".strtoupper($key)."','".  
addslashes($value)."');\n";  
            $string = "<?php\n".$data."\n?>";  
        }  
    }  
    $strlen = file_put_contents(PHPCMS_CACHEDIR.$file, $string);  
    chmod(PHPCMS_CACHEDIR.$file, 0777);  
    return $strlen;  
}  
로그인 후 복사

延伸阅读

此文章所在专题列表如下:

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿