Pergunta

Estou fazendo algumas PHP coisas em um Ubuntu server.

O caminho que eu estou trabalhando é /mnt/dev-windows-dados/Staging/mbiek/test_list mas o PHP chamada getcwd() está de regresso /mnt/dev-windows/Staging/mbiek/test_list (observe como é dev-windows em vez do dev-windows-dados).

Não existem links simbólicos em qualquer lugar.

Existem outras causas para getcwd() voltando um caminho diferente a partir de um local pwd chamada?

Editar

Eu descobri.O DOCUMENT_ROOT em PHP é definido para /mnt/dev-windows que joga tudo fora.

Foi útil?

Solução

Qual arquivo você está chamando o getcwd() e é de que o ficheiro está incluído no que você está executando (por exemplo,execução index.php, incluindo startup.php que contém gwtcwd()).

É o arquivo que você está executando em /dev-windows/ ou /dev-windows-dados/?Ele trabalha com o arquivo que você está sendo realmente executado.


Aqui está um exemplo do meu projeto atual:

index.php

<?php
    require_once('./includes/construct.php');
    //snip
?>

includes/construct.php

<?php
    //snip
    (!defined('DIR')) ? define('DIR', getcwd()) : NULL;

    require_once(DIR . '/includes/functions.php');
    //snip
?>

Outras dicas

@Ross

Eu percebi isso e atualizada do OP com a solução.

@Ross

Eu pensei que getcwd() estava voltando de um sistema de arquivos caminho, ao invés de incluir uma url relativa caminho.

De qualquer forma, permanece o fato de que o caminho /mnt/dev-windows não existe enquanto /mnt/dev-windows-dados.

@Marcos

Bem, isso é apenas estranhas!Qual é a sua include_path que poderia estar atrapalhando thigns redor.Eu, pessoalmente, abandonou-se a favor dos contants como é tão temperamental (ou eu nunca aprendi a fazer justiça).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top