php代码存入数据库,如何解析呢?本文为你讲解

看了很多的源码和后台,有的会做模板编辑,做一写常量,变量之类,或者是直接写PHP代码,那么他们再输出数据的时候,是怎么输出的的呢?

例如 我把数组写入到数据库里面

"空气工作室"
];
?>

这个时候,很多犯难了吧
你想直接输出


目前就借鉴帝国CMS的做法,用文件输出法,再来读取
将PHP代码写入到文件

$arr=[
  'text'=>'空气工作室'
];
$dir=__DIR__.'/';

$text="';
file_put_contents($dir.'/tmp/a.php',$text );

这里随便写个存入文件

  "空气工作室"
);
 echo $arr["text"];

现在要输出了

$dir=__DIR__.'/';
include_once($dir.'/tmp/a.php');

$string = ob_get_contents();
ob_end_clean();
echo $string;

ob_get_contents();

  • ob_start()把输出那同输出到缓冲区,而不是到浏览器。
  • ob_get_contents得到缓冲区的数据。
  • ob_start()在服务器打开一个缓冲区来保存所有的输出。所以在任何时候使用echo,输出都将被加入缓冲区中,直到程序运行结束或者使用ob_flush()来结束。然后在服务器中缓冲区的内容才会发送到浏览器,由浏览器来解析显示。
  • ob_end_clean会清除缓冲区的内容,并将缓冲区关闭,但不会输出内容

总结

将动态代码写入临时文件里面,然后引入调用输出。

你可能感兴趣的:(php代码存入数据库,如何解析呢?本文为你讲解)