Hallo zusammen,
ich richte mir grad meine Devel-Umgebung unter Windows ein und stelle mir gerade die Frage wo hier die Knackpunkte bei der späteren Umstellung auf Linux als Produktiv-Umgebung liegen.
Ich würde also gerne unter Windows entwickeln und mit lokalem XAMPP testen und das ganze dann später mit möglichst wenig Aufwand unter Linux einsetzen. Wie sieht's denn da z.B. mit den unterschieden bei den Pfaden aus? (z.B. \ und /)
Treten evtl. noch andere Probleme auf?
Grüße,
Frank
Ankündigung
Einklappen
Keine Ankündigung bisher.
[Erledigt] Development Windows -> productive Linux
Einklappen
Neue Werbung 2019
Einklappen
X
-
[Erledigt] Development Windows -> productive Linux
Stichworte: -
-
Ein Gast antworteteAuch ganz nützlich:
PHP-Code:<?php
echo "Direcrory-Seperator = " . DIRECTORY_SEPARATOR . "
Path-Separator = " . PATH_SEPARATOR;
?>
phpfan
-
Ein Gast antworteteVielen Dank für die ausführlichen Tipps.
Ich hab' hier noch ein Buch rumliegen in dem es unter anderem einen Abschnitt über Error-Reporting gibt. Das werd ich mir heute mal reinziehen und schauen ob ich daraus schlau werde
So Dinge wie Error-Reporting respektive das loggen von Fehlern bzw. versenden per eMail auch im Produktiveinsatz möchte ich möglichst für alle Projekte zentralisieren bzw. in einer Klasse abstrahieren um das bei jedem Projekt möglichst gleich einsetzen zu können. Dazu muss ich aber erstmal verstehen wie php das handhabt und was man da schönes bauen kann.
Einen Kommentar schreiben:
-
Zitat von LokariLetztlich soll das Projekt ja später mal auf nahezu jedem Server lauffähig sein.
Verfügung stellt, da es leider nicht immer geht, dass man relative Pfade
verwendet, nämlich wenn SkriptA mit Dateien arbeitet und nun SkriptB aus
einer anderen Verzeichnis-Ebene SkriptA einbindet.
Habe es so geschafft, dass es auch egal ist, auf welcher Verzeichnisebene
das Projekt läuft, also ob unter
http://localhost/projektX oder http://projektx.de
Leider macht Schlund manchmal nicht mit.
Hilfreiche Informationen stehen übrigens hier:
PHP-Code:<?php
print '<pre>';
print_r($_SERVER);
print_r(get_defined_constants());
print '</pre>';
phpinfo();
?>
Zitat von LokariDas Thema Error-Reporting ist mir noch etwas fremd,
steht aber schon auf meiner Lern-Todo-Liste
Zum Beispiel findet man dadurch Schreibfehler in Variablen, die man in
größeren Skripten sonst garnicht findet.
PHP-Code:<?php
$varmame = true; // Schreibfehler
// womöglich riesiger Codeblock
if ($varname) {
?>
$varname nicht definiert ist (Deklaration fehlerhaft), also null => false. Man sucht nur im Code-Block von if, der Fehler geschah aber schon
früher).
Mit angezeigten Hinweisen bekäme man die Info, dass $varname nicht
definiert ist und somit schaut man sich sofort die Deklaration an.
Einen Kommentar schreiben:
-
Ein Gast antworteteHallo Zergling,
danke für Deine Antwort.
Windows ist dies egal, also benutz am Besten durchgehend den Slash / anstatt dem Backslash \
Ich arbeite sowieso mit einer (denke ich) recht durchdachten Datei- und Verzeichnisstruktur, die natürlich zentrale Configfiles beinhaltet. Letztlich soll das Projekt ja später mal auf nahezu jedem Server lauffähig sein.
Das Thema Error-Reporting ist mir noch etwas fremd, steht aber schon auf meiner Lern-Todo-Liste
Grüße,
Frank
Einen Kommentar schreiben:
-
Wichtig bei soetwas ist, dass du relative statt absoluten Pfaden verwendest.
Als Info: Linux verwendet den Slash als Pfad-Trennzeichen, Windows ist dies egal, also benutz am Besten durchgehend den Slash / anstatt dem Backslash \
Falls du absolute Pfade verwenden musst (warum auch immer), zentralisiere sie in einer Datei, die von allen anderen includet wird. So kannst du Änderungen Projektweit durchführen.
Sehr zum empfehlen sind auch die selben PHP-Versionen (zumindest die Subversion sollte gleich sein) und -Einstellungen beim Testen wie beim Online-Server zu verwenden . Wenn du dann noch sauber programmierst und error_reporting(E_ALL) verwendest (also auch Hinweise anzeigen läßt) dürfte nichts schiefgehen
Einen Kommentar schreiben:
Einen Kommentar schreiben: