PHP优化请求每个页面上的所有函数?

PHP优化请求每个页面上的所有函数?,php,performance,optimization,pagespeed,Php,Performance,Optimization,Pagespeed,我有一个php网站,我想优化它。我有一个config.php,它通过所有页面上的所有函数请求我的所有文件(我不需要为每个页面调用这些文件)。这是件坏事吗?如果我调用接口aly接口函数和admin aly接口函数,我会看到任何改进吗 require_once "inc/common.php"; //probabilnu se foloseste ^ jos require_once "inc/producers_functions.php"; require_once "inc/slider_f

我有一个php网站,我想优化它。我有一个
config.php
,它通过所有页面上的所有函数请求我的所有文件(我不需要为每个页面调用这些文件)。这是件坏事吗?如果我调用接口aly接口函数和admin aly接口函数,我会看到任何改进吗

require_once "inc/common.php";
//probabilnu se foloseste ^ jos
require_once "inc/producers_functions.php";

require_once "inc/slider_functions.php";
require_once "inc/static_pages_functions.php";
require_once "inc/products_functions.php";
require_once "inc/interface_functions.php";
require_once "inc/cart_functions.php";
require_once "inc/cart_product_functions.php";
require_once "inc/cart_option_functions.php";
require_once "inc/cart_product_cart_options_functions.php";
require_once "inc/session_functions.php";
require_once "inc/user_information_functions.php";
require_once "inc/invoice_functions.php";
require_once "inc/company_info_functions.php";
require_once "admin/assets/libs/phpmailer/class.phpmailer.php";
require_once "inc/promoted_products_functions.php";
require_once "inc/diagonal_widget_functions.php";
require_once "inc/round_widget_functions.php";
require_once "inc/order_functions.php";
require_once "inc/general_settings_functions.php";
require_once "inc/wishlist_functions.php";
require_once "inc/marquee_widget_functions.php";
require_once "inc/functions_adminac.php";
require_once "inc/show_category.php";
require_once "inc/function_login_reg.php";
require_once "inc/grey_widget_func.php";
这是件坏事吗? 如果我调用接口函数和管理函数,我会看到任何改进吗

require_once "inc/common.php";
//probabilnu se foloseste ^ jos
require_once "inc/producers_functions.php";

require_once "inc/slider_functions.php";
require_once "inc/static_pages_functions.php";
require_once "inc/products_functions.php";
require_once "inc/interface_functions.php";
require_once "inc/cart_functions.php";
require_once "inc/cart_product_functions.php";
require_once "inc/cart_option_functions.php";
require_once "inc/cart_product_cart_options_functions.php";
require_once "inc/session_functions.php";
require_once "inc/user_information_functions.php";
require_once "inc/invoice_functions.php";
require_once "inc/company_info_functions.php";
require_once "admin/assets/libs/phpmailer/class.phpmailer.php";
require_once "inc/promoted_products_functions.php";
require_once "inc/diagonal_widget_functions.php";
require_once "inc/round_widget_functions.php";
require_once "inc/order_functions.php";
require_once "inc/general_settings_functions.php";
require_once "inc/wishlist_functions.php";
require_once "inc/marquee_widget_functions.php";
require_once "inc/functions_adminac.php";
require_once "inc/show_category.php";
require_once "inc/function_login_reg.php";
require_once "inc/grey_widget_func.php";
这两个问题的答案都是“视情况而定”。如果文件只声明新的符号和函数,那么应该没有什么区别。如果使用将加载的文件缓存在内存中的
opcache
模块,则更少

如果文件(或其中一些文件)执行一些耗时的操作,例如会话管理、数据库连接、日志记录等,那么是的,这可能是一件坏事,更改它可能是有益的

有几种方法可以优化这种模式,通常将代码封装在类中,然后使用“自动加载程序”

您可以在包含
config.php
之前声明特定符号,以便只包含某些文件:

<?php
    define('NEED_ADMIN', 1);
    define('NEED_MARQUEE', 1);
    include 'config.php';
您还可以将所有文件合并到单个文件或多个文件中。然后您需要一些维护脚本,它们知道,例如,“inc/block17.php”是inc/wishlist、inc/marquee和inc/login的串联,并检查这些文件是否比主文件更新;如果是,它会将所有组件文件重新连接到主文件中

$short = array(
    'inc/block1.php' => array(
         "inc/marquee_widget_functions.php",
         "inc/functions_adminac.php",
         "inc/show_category.php",
         "inc/function_login_reg.php",
         "inc/grey_widget_func.php",
    ),
    'inc/block2.php' => array(
         "inc/marquee_widget_functions.php",
         "inc/functions_adminac.php",
         "inc/diagonal_widget_functions.php",
    ),
正如您所看到的,这种方法会在blocks*includes中产生大量的代码重复,但在某些情况下是值得的(只要它是自动处理的,您不需要手工操作)


还有(并非适用于所有应用程序体系结构)可以确定file1.php是否确实需要给定的包含,从而允许您删除它。

运行
require\u一次大约需要1-2微秒。函数声明不应该花费太多的时间,即使需要那么多时间。如果您正在寻找性能优化,那么这很可能不是最佳选择。相反,您应该从执行外部i/o的功能开始,例如访问磁盘、数据库或网络。试着分析到底是什么让你的网站变慢了,转而去做