Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

afbartels

require_once

Recommended Posts

Bom dia pessoal,

 

estou querendo acessar um arquivo em outro diretorio mas estou tendo problemas.

 

 

meu esquema é o seguinte:

   raiz
     |_ class
           |_ class1.php

     |_ dir
          |_ arq.php

     |_ index.php

no meu arquivo arq.php

 

 require_once '../class/class1.php';

dessa forma a página fica em branco. Agora se passar o arq.php para a raiz funciona normalmente.

 

 require_once 'class/class1.php';

já tentei usar dirname(__FILE__) e não deu resultado.

 require_once dirname(dirname(__FILE__)).'/class/class1.php';

Compartilhar este post


Link para o post
Compartilhar em outros sites

ja tentou passar o diretorio completo????

 

 

ex:

// Linux
require_once('/var/www/arquivo.php');
//Ruindows
require_onde("c:\www\arquivo.php");

Compartilhar este post


Link para o post
Compartilhar em outros sites

No seu index.php, que deve ser o arquivo principal, defina uma constante com o valor absoluto do caminho até aquele diretório:

 

define( 'BASEPATH', getcwd() . DIRECTORY_SEPARATOR );

A partir de então, todo require/include(_once) você começa com essa constante e vai definindo à frente dela tantos subdiretórios quantos forem necessários para alcançar seu arquivo:

 

require_once BASEPATH . 'class/class1.php';

Isso, considerando aqui para mim, em ambiente Windows com Zend Sever 5 instalado sob as configurações padrão, seria traduzido internamente em:

 

C:\Arquivos de programas\Zend\Apache2\htdocs\/class/class1.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas eu vou ter acesso a esta constante mesmo no diretorio filho? Tentei aqui e não deu certo.

 

Certeza?

 

index.php

<?php

define( 'BASEPATH', getcwd() . DIRECTORY_SEPARATOR );

require_once BASEPATH . 'teste.php';

?>

teste.php

<?php

print 'Included File<br /><br /> BASEPATH Constant Value: <br />' . BASEPATH;

?>

Saída:

 

Included File

 

BASEPATH Constant Value:

C:\Arquivos de programas\Zend\Apache2\htdocs\

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.