Heim > Artikel > Backend-Entwicklung > 问一下大家,用php标签来生成一些html标签的超链接(href/src)相比起直接写出来的效率问题?
有时候可能线上线下一些东西所在的路径不同.就会类似于这么去写
<code>//某个.php文件 <link href="<?php%20echo%20constant(" css_path>main.css" rel="stylesheet"></code>
但是我在想哦,有时候要让网站静态化嘛.那这种方法就不适用了嘛?如果非要让网页静态化的话怎么解决线上线下路径不同的问题?有什么简便的方法可以解决这个问题?就好像node.js中的jade直接模板渲染出来?
还有就是如果一个页面嵌套了很多这样子的标签会不会让网页加载效率变低?
刚学php不久QAQ..见识不广..求解释
有时候可能线上线下一些东西所在的路径不同.就会类似于这么去写
<code>//某个.php文件 <link href="<?php%20echo%20constant(" css_path>main.css" rel="stylesheet"></code>
但是我在想哦,有时候要让网站静态化嘛.那这种方法就不适用了嘛?如果非要让网页静态化的话怎么解决线上线下路径不同的问题?有什么简便的方法可以解决这个问题?就好像node.js中的jade直接模板渲染出来?
还有就是如果一个页面嵌套了很多这样子的标签会不会让网页加载效率变低?
刚学php不久QAQ..见识不广..求解释
像这种填充html的php标签运行速度其实超快的,运行速度影响可以完全忽略。
所以你可以写一个config.php, 在里面声明各类路径
比如
<code><?php define('CSS_PATH', './static/css/'); //等等... ?></code>
然后可以用.htaccess自动include或者手动include这个文件。这样只要改这个config.php就能更新整个项目的路径。
只要不是古董版本的php都支持短标签,可以这么写简短一些:
<code><link href="<?=CSS_PATH?>style.css" rel="stylesheet"></code>
如果你就是不爽,可以自己写脚本吧所有的常量替换成想要的地址,重新部署的时候运行一次就好了。
刚刚看见你又问了如何像编译一样整个更新。
说个笨方法,就把整个项目文件夹搜索=CSS_PATH?> 替换成你想要的。
开发的时候就填写=CSS_PATH?>,部署的时候把代码全复制过来然后用脚本替换每个变量。
主要目的是为了提高代码的可迁移和一些开发上的问题。
好比说可以用1来代表已安装,为什么非要用一个常量来表达呢?
1.提高可读性
2.虽然标准固定了就不能改变,但是也有不得不改动的时候,那么如果是用1的话估计可以改的你想死了。
这个问题同理