Команда PHP в Ubuntu возвращает текст файла PHP

Я пытался запустить мои php-скрипты на моей машине с Ubuntu 13.10. Но необычно это возвращает содержимое файла php.

php -q discover/server.php
<?

// configuration settings
require "config.php";

function pollCallback()
{
        $poller = new Poller_Discover ();
        $poller->check ();
}

$daemon = new Core_Daemon ( 'pollCallback', true );

Я нахожу это очень необычным, потому что я уже включил конфигурацию php enable_short_tag.

Пожалуйста посоветуй.:)

заранее спасибо!:)

2 ответа

Решение

Вы должны попробовать включить короткие теги в соответствующих php.ini файл, который используется командой CLI php. Его местоположение может зависеть от распределения.

Если вы хотите запустить консольный скрипт таким образом, у вас есть 2 варианта, вы смешали их, поэтому он не работает:

Использование ШЕБАНГА:

#!/usr/bin/php
<?php
/*
code
*/

побежал мимо ./discover/server.php (убедитесь, что он исполняется с помощью chmod 700 / 770 / 777).


Или отправив скрипт на php:

<?php
/*
code
*/

побежал мимо php -q discover/server.php,

Вы также не должны использовать короткие теги <? /* */ ?> как они есть off по умолчанию на большинстве серверов.

Также проверьте, что у вас есть правильный файл php.ini, есть разные версии для apache, fpm, cli (<- это то, что вам нужно), cgi,...

Другие вопросы по тегам