GNU/Linux >> Znalost Linux >  >> Linux

Jak mohu definovat DIRECTORY_SEPARATOR pro platformy Windows i Linux?

PHP přijímá obě \ a / jako platné oddělovače cest ve všech OS. Stačí tedy použít / ve vašem kódu


PHP chápe '\' a '/' jako oddělovače cest, bez ohledu na systém, na kterém jste. Dávám přednost použití '/' (unixový způsob) ve všech mých kódech. Když jste na Windows a je potřeba poskytnout úplnou kvalifikovanou cestu Windows/DOS, budu mít tuto jednoduchou, nedestruktivní funkci

function dosPath($path){
    return str_replace('/', '\\', $path);
}

Příklad:

$drive = 'C:';
$path = '/tmp/uploads';

echo dosPath($drive.$path);
echo dosPath($path);

Viz Předdefinované konstanty PHP

Možná je to již definováno ve vašem skriptu, zkuste opakovat DIRECTORY_SEPARATOR, zjistěte, zda má nějakou hodnotu


Pro usnadnění můžete napsat definovat kratší konstantu:

DEFINE('DS', DIRECTORY_SEPARATOR); 

a poté napište svou cestu jako:

$path = 'www'.DS.'app'.DS.'index'; 

Nebo nerozumím vaší otázce?


Linux
  1. Jak získat přístup k souborovým systémům Linux ve Windows 10 a WSL 2

  2. Jak zkontrolovat verzi OS a Linuxu

  3. (C/C++) Jak vygenerovat spustitelný soubor, který lze spustit na Windows i Linuxu?

  1. Kali na podsystému Windows pro Linux

  2. Jak mohu získat rozlišení (šířku a výšku) pro video soubor z příkazového řádku linuxu?

  3. Jak mohu upravit $PATH na linuxu?

  1. Jak mohu vidět velikost souborů a adresářů v linuxu?

  2. Jak používat / (oddělovač adresářů) v Linuxu i Windows v Pythonu?

  3. Linux na UEFI – jak restartovat na obrazovku nastavení UEFI, jako to umí Windows 8?