@Byran M.我倾向于使用其他WordPress开发人员不经常使用的两种结构,这让我感到惊讶,但我非常喜欢它们。
1.)Heredocs
您可以将大块文本存储为
heredocs 字符串,这样我就可以存储对单引号和双引号混合的担忧:
$html=<<<HTML
<input type="{$type}" size="{$size}" id="{$id}" class="{$class}" value="{$value}" />
HTML;
请注意,变量可以作为数组传递给函数,然后
extract()
或者你可以用其他方式分配它们。还要注意,我使用大括号并不是因为它们总是必需的,而是因为它们使代码更易于阅读。(当然可以使用以下功能:
the_content()
与…有实质性的不同
get_the_content()
WordPress并不总是让这种编码方式变得容易。)
更重要的是,虽然它可能与您无关,但如果我使用诸如HTML、SQL等heredoc名称,那么我的IDEPhpStorm 执行语法注入,并在heredoc中为我提供自动完成和语法着色。
2.)使用数组进行字符串连接
我喜欢使用的另一个习惯用法是将内容收集到数组中,然后
implode()
阵列。虽然我从未对此进行过基准测试,因此它可能没有我假设的那么有用,但我确实知道,随着字符串变大,重复的字符串串联是一个杀手锏(如果有人知道为什么这种方法没有更好,或者如果你知道更好的方法,我很乐意听取反馈):
function my_get_form_and_fields($input_items) {
$html = array();
$html[] = \'<form name="my_form" method="get">\';
foreach($input_items as $input_item) {
extract($input_item);
$html=<<<HTML
<input type="{$type}" size="{$size}" id="{$id}" class="{$class}" value="{$value}" />
HTML;
$html[] = \'</form>\';
return implode("\\n",$html);
}