Странная работа global
Проблема, видимо, в том, что обращение к переменной осуществляется не в глобальной области видимости.

Скорее всего всё решится, если перед обращением добавить ещё один global.

<?php global $logpath; $logpath = 234; function a() { global $logpath; var_dump($logpath); } a(); ?>


P.S. Можно использовать вместо этого хотя бы синглтоны, или константы, которые глобальны всегда.
можно еще debug_print_backtrace() после <?php поставить, чтобы посмотреть в глобальной ли области создается $logpath = 234; или внутри какой-то функции.