我已经为我的网站开发了很多PHP代码片段,我不确定为了减少网站加载时间,把它们放在哪里最合适。
如果它们进入函数。php或专用插件,然后默认情况下,它们将加载到站点的每个页面,而不仅仅是需要它们的页面。这是否会对加载时间产生有意义的影响,或者如果从未实际调用函数,这是否无关紧要?
似乎使用条件like更好一步if(is_page_template()) { include_once(\'this-function.php\'); }
并且只在实际使用它们的页面上加载函数。
我还可以从模板文件本身的代码中包含一个外部php文件,甚至可以直接在模板中包含函数。这两种方法看起来都很马虎,但速度快吗?
将所有内容封装在类中而不是使用命名函数的最佳方法是什么?
SO网友:Mike
我会将代码封装在类中,然后仅当代码调用类时,才使用自动加载加载这些类。
以下是一个示例:
// register my autoload function
spl_autoload_register(\'my_wp_autoload\');
/**
* This function is called every time PHP tries to instanciate an undefined class
*/
function my_wp_autoload( $class ) {
// build the path of the file that holds your class definition
$filename = dirname( __FILE__ ) . \'/include/classes/\' . strtolower( $class );
// if the file exists, include it
if( file_exists( $filename ) ) {
include_once( $filename );
}
}
这背后的想法是,当您在PHP代码中调用未定义的类时,解析器将首先执行自动加载函数,然后引发异常。这是您最后一次更改,以包含定义类的文件。