• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

How to run a xenforo class from PHP CLI


Active member
I've created a file that using something like this:


$startTime = microtime(true);

$fileDir = dirname(__FILE__);


XenForo_Application::initialize('/w/web/library', $fileDir);
XenForo_Application::set('page_start_time', $startTime);

$inputHandler = new XenForo_Input(new Zend_Controller_Request_Http());

$input = $inputHandler->filter(array(
    't' => XenForo_Input::UINT,
    'p' => XenForo_Input::UINT

$importModel = XenForo_Model::create('XenForo_Model_Import');

$target = false;
if ($input['t'])
    if ($newId = $importModel->mapThreadId($input['t']))
        $target = XenForo_Link::buildPublicLink('canonical:threads', array('thread_id' => $newId));
else if ($input['p'])
    $newId = $importModel->mapPostId($input['p']);
    if ($newId)
        $target = XenForo_Link::buildPublicLink('canonical:posts', array('post_id' => $newId));

if (!$target)
    $target = XenForo_Link::buildPublicLink('canonical:index');


$response = new Zend_Controller_Response_Http();
$response->setRedirect(XenForo_Link::convertUriToAbsoluteUri($target), 301);
The file call a class without the REQUEST parameter. (the file is copied as it is from the old vbulletin redirect plugin, nothing special).

The problem is that while when i see the page on the browser everything works, when i look at it from the command line, it won't work:

root@#:~# php -f /w/web/upload_to_youtube.php
An unexpected error occurred. Please try again later.

How can i fix this?