我试图弄清楚在我的网络应用程序中经常重复的克隆/模板 HTML 的最佳方法是什么。例如,我有一个投票<form>(见下文)需要位于多个页面上。
我想到了两种方法:
- 函数调用,例如,
voteForm($action, $user_id, $formType, $success); - 声明,
include例如,include '/myApp/views/voteForm.php'
我更喜欢include声明 b/c:
- 然后我不必决定函数的参数,这些参数可能会随着时间的推移而改变,迫使我在我的应用程序中存在的任何地方重写函数调用。使用该
include语句,我可以在放置included php 文件的任何位置使用变量(避免重新声明它们,这很痛苦 b/c 通常有很多变量)。 - 我可以在 HTML 中编写 HTML,而不是作为我必须处理转义字符/json_encode 问题的 PHP 字符串。
我是否应该出于任何原因(例如,性能)重新考虑使用include它function()?还有其他我没有想到的模板解决方案吗?
<form action="<?=$action?>" method='post' data-form-data='{'formType': '<?=$formType?>', 'success': '<?=$success?>'} >`
<input type='hidden' value='<?=$user_id?>' name='user_id'>
<input type='radio' value='1' name='vote'>
<input type='radio' value='-1' name='vote'>
</form>