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