backslash in windows en linux servers
Marthijn Buijs
16/02/2016 19:19:11Hallo medemensen,
Ik zit al een tijdje met deze vraag, dus laat ik me vraag maar stellen:
Op internet lees ik dat je bij een Windows server '/' of '\' in paden kunt gebruiken en dat bij Unix-systemen alleen '/' gebruikt kan worden.
Is dit waar?
Dus niet dat ik in de toekomst webapplicaties schrijf en dat die het niet gaat doen op Unix-systemen omdat er 2 verschillende slashes in het pad zitten?
Dit heeft misschien met luiheid te maken maar in PHP gebruik ik graag de constant __DIR__, waarin backslashes zitten. Of worden die slashes in dat pad automatisch omgezet naar de goede?
IK hoop dat jullie me vraag snappen.
Alvast bedankt!
Ik zit al een tijdje met deze vraag, dus laat ik me vraag maar stellen:
Op internet lees ik dat je bij een Windows server '/' of '\' in paden kunt gebruiken en dat bij Unix-systemen alleen '/' gebruikt kan worden.
Is dit waar?
Dus niet dat ik in de toekomst webapplicaties schrijf en dat die het niet gaat doen op Unix-systemen omdat er 2 verschillende slashes in het pad zitten?
Dit heeft misschien met luiheid te maken maar in PHP gebruik ik graag de constant __DIR__, waarin backslashes zitten. Of worden die slashes in dat pad automatisch omgezet naar de goede?
IK hoop dat jullie me vraag snappen.
Alvast bedankt!
PHP hulp
14/11/2024 07:50:02Ik heb even uitgetest op twee verschillende machines, en bij __DIR__ wordt inderdaad de juiste slash gebruikt afhankelijk van het besturingssysteem welke je draait.
Ook interessant is dat PHP een eigen constante aan boord heeft die de juiste slash bepaalt: PHP_DIRECTORY_SEPARATOR
Ook interessant is dat PHP een eigen constante aan boord heeft die de juiste slash bepaalt: PHP_DIRECTORY_SEPARATOR
Gewijzigd op 16/02/2016 19:54:57 door - Ariën -
Marthijn Buijs
16/02/2016 19:28:24Bedankt, dit was de oplossing op mijn vraag!
Edit:
Bedoel je niet DIRECTORY_SEPARATOR?
Edit:
Bedoel je niet DIRECTORY_SEPARATOR?
Gewijzigd op 16/02/2016 19:33:25 door Marthijn Buijs
Thomas van den Heuvel
16/02/2016 22:14:09En nadat je dat 2x hebt ingetypt definieer je een constante met een kortere naam die daarvan is afgeleid :p
Ozzie PHP
17/02/2016 00:42:48Nou moet ik eerlijk bekennen dat ik ook nog steeds DIRECTORY_SEPARATOR gebruik, maar dat is aangeleerd gedrag. Je kunt het verschil tegenwoordig namelijk negeren: elk modern besturingssysteem — óók Windows — ondersteunt de forward slash / in paden.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', 1);
echo '<pre>';
// Huidige directory met / in plaats van \
$dir = str_ireplace('\\', '/', __DIR__);
var_dump(is_dir($dir));
// Huidig bestand met / in plaats van \
$file = str_ireplace('\\', '/', __FILE__);
var_dump(is_file($file));
// Inhoud van dit PHP-bestand
$code = readfile($file);
var_dump($code);
?>
error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', 1);
echo '<pre>';
// Huidige directory met / in plaats van \
$dir = str_ireplace('\\', '/', __DIR__);
var_dump(is_dir($dir));
// Huidig bestand met / in plaats van \
$file = str_ireplace('\\', '/', __FILE__);
var_dump(is_file($file));
// Inhoud van dit PHP-bestand
$code = readfile($file);
var_dump($code);
?>