如何解决html,php:需要建议如何简化工作的html代码
我想将HTML编写为php函数
例如
function input_textarea($inputid,$lablevalue,$materializeicon){
echo '
<div class="input-field">
<textarea id="'.$inputid.'" name="'.$inputid.'" dir="rtl" class="materialize-textarea right-align" cols="20" rows="20"></textarea>
<label for="'.$inputid.'">'.$lablevalue.'</label>
<i class="material-icons prefix right">'.$materializeicon.'</i>
</div>
';
}//end echo
我在以下几个文件上运行它:
<?php input_textarea('description','Put item desctiption','message') ?>
还是问ho进行改进,还是有什么更好的方法?
另一个将区域分为2个部分的实例(在Materialize中)
function row2cols_start($leftside){
echo '
<div class="row"><!-- row start//-->
<div class="col s'.$leftside.'">';
}
function row2cols_middle($leftside){
$rightside=12-$leftside;
echo '
</div>
<div class="col s'.$rightside.' ">';
}
function row2cols_end($rightside){echo '
</div>
</div><!-- row end//-->';
}
执行者
<?php row2cols_start(8); ?>
<div><!-- row start//-->
text1
</div><?php row2cols_middle(8); ?>
<div><!-- row middle//-->
text2
</div><?php row2cols_end(8); ?>
<!-- page row end//-->
看起来更好,但记住您设置的所有内容仍然很复杂
我需要一些简化的方法
解决方法
用PHP编写模板是一种不好的做法。您应该尝试使用twig之类的模板引擎(PHP最常用的模板引擎之一,但还有许多其他的模板引擎)。
使用细枝,您可以将宏用于重复使用的片段。还有许多其他功能,例如,值的转义,模板层次结构,包括……,甚至可以消除将所有内容放在单独的函数中的必要。
您的模板可能如下所示:
{% extends "layout_base.html.twig" %}
{% import "forms.html" as forms %}
{% block content %}
<div class="row">
<div class="col s8">
text 1
</div>
<div class="col s8">
{{ forms.textarea('description','Put item desctiption','message') }}
</div>
</div>
{% endblock %}
这将增强模板的可读性,并防止将业务逻辑放入模板中。
,如果您真的只想使用PHP,请查看对模板真正有用的alternate syntax for control structures和short tags:
<div class="col s8">
<?php if(!empty($user)): ?>
Welcome <?= $user ?>!
<?php endif; ?>
</div>
<div class="col s8">
<?= input_textarea('description','message') ?>
</div>
tl; dr:短标签是编写<?php echo
的便捷方法,控制结构的备用语法消除了许多花括号。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。