Хотите посчитать, сколько раз конкретный файл включен - php

0

Фактически я изменяю старый скрипт моего клиента, сделанный другим разработчиком, что он сделал, он включил один и тот же файл много раз, как config file, что вызывает некоторые переменные, но я просто хочу подсчитать, сколько раз конкретный файл включен в полное выполнение страницы, например, сколько загрузок файла конфигурации и даже лучше, если я могу получить номера строк и имена файлов, где эти файлы включены.

Если есть способ сделать это, это поможет.

Благодарю.

  • 0
    Вы можете использовать xdebug для такой работы.
  • 2
    php.net/manual/en/function.get-included-files.php
Показать ещё 4 комментария
Теги:

1 ответ

1

Если это возможно, это лучше всего сделать во включенном файле. Добавьте строку, такую как track_inclusion(__FILE__); в начале его. Определите функцию следующим образом:

function track_inclusion($filename=null) {
    static $inclusions = array();
    if( !$filename) return $inclusions;

    if( !isset($inclusions[$filename])) $inclusions[$filename] = array();
    $trace = debug_backtrace();
    foreach($trace as $t) {
        if( !preg_match("/^(?:include|require)(?:_once)?$/i",$t['function'])) continue;

        $inclusions[$filename][] = $t;
        break;
    }
}

Затем, как только вы все закончите, вы можете вызвать track_inclusion() чтобы получить данные включения и var_dump его, чтобы посмотреть - как только вы увидите структуру, которую она вам дает, вы можете представить ее более значимым образом.

  • 0
    Позвольте мне попробовать это, даст вам знать результат.
  • 0
    Этот ответ был именно тем, что я искал, но я использовал @CBroe idea coz, что было легко и достаточно для меня, без сомнения, этот ответ предоставляет более подробную информацию. Спасибо всем.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню