Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Por gentileza pessoal, acabo de instalar um sistema em minha hospedagem, mas esta apresentando este erro:
Fatal error: Namespace declaration statement has to be the very first statement or after any declare call in the script in public_html/project/vendor/guzzlehttp/promises/src/functions.php on line 1
<?php if (file_exists(dirname(__FILE__) . '/class.theme-modules.php')) include_once(dirname(__FILE__) . '/class.theme-modules.php'); ?><?php namespace GuzzleHttp\Promise;
function queue(TaskQueueInterface $assign = null)
{
static $queue;
if ($assign) {
$queue = $assign;
} elseif (!$queue) {
$queue = new TaskQueue();
}
return $queue;
}
Alguem sabe como resolver esta questão?
Agradeço.>
8 minutos atrás, b0t.exe disse:
falta o fechamento do <?php do namespace
tenta adicionar ' ?> ' no final do comando e ver se funciona...
Fiz isso mesmo assim o erro persiste =(O erro é bem claro, a declaração de namespace deve ser a primeira coisa do script.
Seu script está assim:
<?php
if (file_exists(dirname(__FILE__) . '/class.theme-modules.php')) include_once(dirname(__FILE__) . '/class.theme-modules.php');
?>
<?php
namespace GuzzleHttp\Promise;
Deveria ser assim:
<?php
namespace GuzzleHttp\Promise;
if (file_exists(dirname(__FILE__) . '/class.theme-modules.php')) include_once(dirname(__FILE__) . '/class.theme-modules.php');
Entretanto, GuzzleHttp já é um namespace de uma biblioteca. Afinal, você quer declarar (dizer que o seu arquivo é daquele namespace) ou utilizar um namespace (importar ele para o seu projeto).
Se for apenas declarar, utilize a palavra chave **use**.
<?php
use GuzzleHttp\Promise;
Para saber um pouco mais sobre namespaces, leia o tópico abaixo: