在我的网站上,我有合作伙伴页面,每个页面都包含一个定义数组变量的PHP块,然后将这些变量传递给一个呈现页面内容的循环。例如,对于hotels.php页面,PHP块如下所示:
<?php
$hotels = [
["href" => "link1",
"src" => "src1",
"alt" => "alt1",
"name" => "name1"
],
["href" => "link2",
"src" => "src2",
"alt" => "alt2",
"name" => "name2"
],
...
];
?>每组合作伙伴页面都有一个单独的php块。因为每个页面的代码基本相同,唯一不同的是PHP块和我引用变量($hotels、$restaurants等)的方式。我想把它们合并成一个。我会将PHP合并为一个,然后使用URL找出我所在的页面,并确定使用哪个变量来呈现页面。
我可以这样做,问题是如果我访问酒店的页面,例如,我将只使用$hotel变量,而其他用于不同类型合作伙伴的变量将被声明但不使用。
我想问一下,是否存在未使用的变量会减慢网站的运行速度,是否有办法避免这个问题(例如,让php代码只在调用时声明懒惰变量)。
发布于 2019-09-17 22:18:15
像这样制作一个模板:
template.php
<ul>
<?php foreach ($entities as $entity): ?>
<li><?= htmlspecialchars($entity['name']); ?></li>
<?php endforeach; ?>
</ul>然后在您的各个页面上,定义不同的$entities并包含可重用模板
hotels.php
<?php
$entities = [...];
require 'template.php';https://stackoverflow.com/questions/57976203
复制相似问题