Olá CoderZ,
Às vezes precisamos deixar nossos scripts / códigos disponíveis e funcionam em todas as plataformas (Unix, Windows, … etc). Mas para fazer isso, precisamos considerar a diferença entre essas plataformas. Claro que existem muitas diferenças, mas hoje vamos falar sobre uma delas. Essa é a barra de diretório ou separador de diretório, como você quiser.
Você deve saber que o Windows usa () como barra / separador de diretório, enquanto o Linux usa (/). Então, o que vamos fazer ?
É mais simples como você pensa. Hoje vou falar sobre (2) método para conseguir isso. E no final eu vou te contar um pequeno segredo.
1ª O método da moda antiga:
if (strtoupper(substr(PHP_OS,0,3)) == 'WIN') {
// Windows
define('SLASH', '\');
} else {
// Linux/Unix
define('SLASH', '/');
}
Então usamos a constante SLASH como separador assim:
$file = 'folder_1'.SLASH.'folder_2'.SLASH.'file.php';
2ª O método oficial:
Usando a constante predefinida (DIRECTORY_SEPARATOR). Como isso :
$file = 'folder_1'.DIRECTORY_SEPARATOR.'folder_2'.DIRECTORY_SEPARATOR.'file.php';
No final, eu quero te contar um pequeno segredo.
O segredo que revelou:
Sim, o Windows usa (), mas não importa se você usar (/). Então você pode usá-lo assim:
$file = 'folder_1/folder_2/file.php';
E vai funcionar bem.
Boa sorte.