脚本宝典收集整理的这篇文章主要介绍了将PHP文件渲染为字符串变量,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我知道ob_start()解决方案(如此处所述:Get render HTML from local PHP file)但感觉相当脏.我希望有更直接和干净的东西.
我想要完成的例子:
<?PHP for ($i = 0; $< 5; $i++) { echo '<p>' . $i . '</p>\n'; }
我的代码:
<?PHP $string = render_PHP('test.PHP'); /* Content of $string: <p>0</p> <p>1</p> <p>2</p> <p>3</p> <p>4</p> */
function render_PHP($path) { ob_start(); include($path); $VAR=ob_get_contents(); ob_end_clean(); return $var; }
然后创建模板文件
//test.PHP <?PHP for($i = 0; $i<5; $i++):?> <p><?PHP echo $i;?></p> <?PHP enDFor ?>
render_PHP('test.PHP');
您甚至可以通过添加第二个参数(数组或对象,即
function render_PHP($path,array $args){ ob_start(); include($path); $var=ob_get_contents(); ob_end_clean(); return $var; }
现在让我们看看它是如何有用的
//create your template test.PHP <?PHP for($i = $args['start']; $i<$args['end']; $i++):?> <p><?PHP echo $i;?></p> <?PHP endfor ?>
现在创建您的参数并将它们传递给render方法
$args = array('start' => 0,'end' => 5); render_PHP('test.PHP',$args);
为什么这很有用
现在你有一个可用的重用函数,无论你需要传递多少个参数,你的逻辑可以放在显示器的单独文件中,使你的代码更具可读性.我们可以使用它来构建仍然易于阅读的大块html.
即
$article = array( //imagine we have an article that we have pulled From our database 'tITle' => 'Some Title','suBTitle' => 'Some Sub Title','body' => 'lorem ipsum dolor sit amet,consectetur adipiscing elit. Mauris eu nulla quis ligula ornare ultricies. Vivamus malesuada lectus a mi auctor PEllentesque. Maecenas eu ultricies sapien,ac porta augue. ','image' => 'img/some_image.jpg' ); echo render_PHP('article.PHP',array $article);
并创建一个模板
<!-- article.PHP --> <!DOCTYPE html> <html> <head> <title><?PHP echo $article['title']; ?></title> </head> <body> <img src='<?PHP echo $article['image']; ?>' alt='whatever' > <h1><?PHP echo $article['title']; ?></h1> <h2><?PHP echo $article['subtitle']; ?></h2> <p><?PHP echo $article['body'];?></p> </body> </html>
以上是脚本宝典为你收集整理的将PHP文件渲染为字符串变量全部内容,希望文章能够帮你解决将PHP文件渲染为字符串变量所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。