separador de caminho no php

1

Sou um utilizador do Windows e aqui está o meu código de exemplo:

<?php
echo "Current directory is: " . realpath(".");
?>

Saída: o diretório atual é: C: \ wamp \ www \ test

Na verdade, quero retornar o caminho no estilo Unix no WAMP

i.e. C: / wamp / www / teste

Como posso fazer isso no WAMP?

Quais são as configurações para fazer isso no WAMP?

    
por Dennis Williamson 27.12.2009 / 11:12

5 respostas

3

DIRECTORY_SEPARATOR retornará / no unix e \ no Windows.

Não tenho certeza se isso responde à sua pergunta.

Existe alguma razão pela qual você deseja produzir o caminho no estilo unix? Você não poderá acessar o caminho.

Se você realmente quiser, use str_replace ,

    
por 27.12.2009 / 11:22
1

Actually, I want to return the path in Unix style on WAMP

i.e. C:/wamp/www/test

Não faz sentido fazer isso - já que não é um caminho real ou válido.

    
por 27.12.2009 / 14:28
1

A resposta anterior sobre PATH_SEPERATOR está errada. Isso lhe dará um ponto e vírgula. Você quer usar DIRECTORY_SEPARATOR .

    
por 30.08.2010 / 03:49
0

Caminhos Unix não começam com uma letra, eles começam com um '/'. Converter caminhos do Windows em caminhos Unix pode não fazer sentido algum, mas você ainda pode usar str_replace () ou preg_replace () no PHP para remover a letra e alterar as barras invertidas em barras.

    
por 27.12.2009 / 15:15
0

Não há como alterar barras invertidas para barras de maneira global: essas funções usam recursos do SO. A melhor maneira é apenas para strtr(realpath('.'), '\', '/') , mas não acho que seja muito útil. Se seu explode() (ou qualquer coisa) for confundido com barras erradas - use regexps: split('\/', realpath('.'))

Observe que strtr() é muito mais rápido ao substituir caracteres únicos do que str_replace() sugerido por outras pessoas.

    
por 27.12.2009 / 15:37

Tags