2013-01-06 9 views
26

arbeiten Ich bin mit require_once wie diesesrequire_once für Verzeichnis nicht

require_once('../mycode.php') 

ich ein Wordpress-Plugin entwickle. Mein Plugin-Ordner ist yves-slider, wo ich eine Datei namens yves-slider.php und einen Ordner namens admin habe. Inside Admin-Ordner Ich habe eine Datei namens admin.php. Ich möchte Datei yves-slider.php in meiner admin.php benötigen, die sich in einem Level-Verzeichnis befindet. Wenn ich versuche,

require_once('../yves-slider.php') 

verwende es gibt ich die folgenden Fehler

Warning: require_once(../yves-slider.php): failed to open stream: No such file or directory in C:\xampp\htdocs\wordpress\wp-content\plugins\yves-slider\yves-slider-admin\yves-slider-admin.php on line 4

Fatal error: require_once(): Failed opening required '../yves-slider.php' (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\wordpress\wp-content\plugins\yves-slider\yves-slider-admin\yves-slider-admin.php on line 4

mache ich falsch? Ich benutze XAMPP 3.1, ich denke, das ist der beste Weg, es zu tun.

+0

Dieser Fehler tritt oft auf, und um ihn schnell zu beheben, führen Sie die folgenden Schritte aus: stackoverflow.com/a/36577021/2873507 –

Antwort

49

Sie wollen, dass in Bezug auf den Strompfad machen Sie die Datei in ist:

require_once __DIR__ . '/../yves-slider.php'; 

Was wohl passiert ist, dass der Strompfad PHP in aussieht, ist nicht der Weg Sie denken, es ist. Wenn Sie neugierig sind, was es ist (der aktuelle Pfad), können Sie echo getcwd(); tun.

+0

Was zur Hölle ich vermisse nur ein "/" in Ihrem Beispiel '/../yves- slider.php ': D vielen Dank .. Ihre Antwort wird in 6 Minuten überprüft. Warum zur Hölle brauche ich ein "/"? anstatt direkt '../yves-slider.php' –

+0

aber ich frage mich, warum diese Art von "relativen" Pfaden arbeiten: require_once "directory/class.php" – emfi

+1

@emfi die relativ zum aktuellen Arbeitsverzeichnis sind und sein sollten Für Flexibilität in Ihrem Code erhalten. – PeeHaa

Verwandte Themen