Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Was bedeutet dieser Ausdruck?

    web28

    • modified Team
    • Beiträge: 9.404
    Was bedeutet dieser Ausdruck?
    am: 27. September 2009, 13:57:41
    Was bedeutet dieser Ausdruck? (admin/backup.php

    Code: PHP  [Auswählen]
    $row = preg_replace("/\n#/", "\n".'\#', $row);
                   
    Kann mir das einer erklären?

    Gruss Web28



    Linkback: https://www.modified-shop.org/forum/index.php?topic=2145.0
    Managed Server

    phpGuru

    • Frisch an Board
    • Beiträge: 94
    Was bedeutet dieser Ausdruck?
    Antwort #1 am: 27. September 2009, 14:25:01
    Lernen hat noch keinem was geschadet. Da bleibt auch was in der Birne hängen:
    http://www.php.net/preg_replace

    baustelle

    • Fördermitglied
    • Beiträge: 1.622
    Was bedeutet dieser Ausdruck?
    Antwort #2 am: 27. September 2009, 15:07:14
    Falscher Tonfall, falscher Obstbaum.

    speedy

    • Viel Schreiber
    • Beiträge: 3.214
    Was bedeutet dieser Ausdruck?
    Antwort #3 am: 27. September 2009, 15:17:22
    phpGuru belehrt andere scheinbar mit Vorliebe

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Was bedeutet dieser Ausdruck?
    Antwort #4 am: 27. September 2009, 16:29:25
    Moment mal... immer schwierig in geschriebenes Wort eine Betonung hinein zu legen, aber ich würde das nun wirklich nicht überbewerten!

    Also bitte weiter im Thema und hier keine Zickereien anfangen! ;-)

    phpGuru

    • Frisch an Board
    • Beiträge: 94
    Was bedeutet dieser Ausdruck?
    Antwort #5 am: 27. September 2009, 17:12:49
    Ich hab das nicht böse gemeint, aber ich kriege einen Hals wenn Leute nicht in der Lage sind oder keine Lust haben dies an entsprechender Stelle nachzulesen und dann erwarten, dass man es ihnen alles vorkaut. Einen Klick auf den Google Knopf und man könnte es nachlesen und verstehen, ausführlich und mit Beschreibungen.

    Diesen Ausdruck hier zu beschreiben und auch noch Beispiele zu liefern würde zu weit gehen. Das haben dann Leute an entsprechender Stelle bereits ausführlich getan.

    zu oben: Das ist zum Beispiel die Zeile, dass " escaped werden. Siehe Dein Backup Thread. Hab dazu was geschrieben.

    @speedy
    Zitat
    phpGuru belehrt andere scheinbar mit Vorliebe

    Ne tue ich nicht, wenn du den Kommentar in Deinem Thread meinst. Die Smileys sollten es dir sagen. Ich wollte dich nur darauf Hinweisen, dass dies zu Problemen führen könnte, wenn man gewisse Dinge nicht beachtet. Es gibt genug Leute die knallen halt alles mögliche in Ihren Shop ohne nur 5 Minuten Zeit darauf zu verwenden, ob es vielleicht größere Auswirkungen haben könnte als geplant und wundern sich dann, dass sie einen schönen Brief erhalten. Dann ist es fürs Nachdenken zu spät. Dann rollt die Kohle. Vielleicht wäre man eventuell dann über einen solchen Kommentar dankbar gewesen.

    speedy

    • Viel Schreiber
    • Beiträge: 3.214
    Was bedeutet dieser Ausdruck?
    Antwort #6 am: 27. September 2009, 17:25:34
    @phpGuru
    Weißt du, es nervt nur, wenn immer die gleiche Leier zu Google Analytics kommt.
    Man kann nirgendwo eine Frage dazu stellen, ohne das nicht schon wieder einer mit Datenschutz ankommt. Die Problematik ist bekannt.
    Allerdings, jeder Webhoster protokolliert den Traffic mit Webalizer o.ä. und da regt sich keiner auf, obwohl man´s meist nicht mal verhindern kann. Die Daten werden auch nicht vom Webmaster selbst erfasst und verwaltet, sondern von Dritten.

    Für Diskussionen dazu bitte dann ggf. nen neuen Thread aufmachen, denn auch in den anderen passt es nicht und verwässtert leider wie hier das Problem.

    guensi

    • Viel Schreiber
    • Beiträge: 2.288
    Was bedeutet dieser Ausdruck?
    Antwort #7 am: 27. September 2009, 19:24:20
    Na nun sollten wir das Ganze nicht gleich zu hoch hängen, und ausweiten schon gar nicht.

    Die Frage war konkret gestellt.

    Die Antwort konkret gegeben, wenn auch mit einem aus meiner Sicht unnötigen Zusatz. Bin auch ein Freund von "Hilfe zur Selbsthilfe".

    Der Hinweis: "Google fragen hätte geholfen, da kriegste folgende Antwort" hätte gereicht.

    Ich hab mir abgewöhnt, einen Hals zu kriegen, bloss weil jemand eine Frage stellt. Das ist ungesund und hilft keinem, mir am allerwenigsten. Deshalb cool bleiben, und so antworten wie ich auch erwarten würde das meine Frage beantwortet wird. Damit dürfte ich selten daneben liegen.

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Was bedeutet dieser Ausdruck?
    Antwort #8 am: 27. September 2009, 20:34:36
    Und vor allem immer bedenken, dass es hier im Forum wirklich schwer ist hinter die Köpfe der Benutzer zu schauen, wie sie etas gemeint haben könnten, weil es einfach nicht möglich ist in geschriebenes Wort eine ordentliche Betonung hinein zu packen. Da muss man auch vorsichtig sein mit Ironie!

    Grüße

    Torsten

    DokuMan

    • modified Team
    • Beiträge: 6.669
    • Geschlecht:
    Was bedeutet dieser Ausdruck?
    Antwort #9 am: 28. September 2009, 16:07:57
    Ich kann nur raten, da ich nicht weiß, wozu die Raute gut sein soll...
    Wahrscheinlich wird eine Zeile bis zum Zeilenumbruch "/n" gelesen und zugewiesen?

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Was bedeutet dieser Ausdruck?
    Antwort #10 am: 28. September 2009, 16:16:51
    Ich glaube er hat die Lösung schon gefunden, wenn ich mal die Version 1.72 des Datenbank-Backup-Managers so deuten darf. ;-)

    web28

    • modified Team
    • Beiträge: 9.404
    Was bedeutet dieser Ausdruck?
    Antwort #11 am: 28. September 2009, 17:09:37
    Zitat
    Ich glaube er hat die Lösung schon gefunden, wenn ich mal die Version 1.72 des Datenbank-Backup-Managers so deuten darf.

    Nein, das habe ich dort einfach so gelassen. Leider verstehe ich den Ausdruck nicht, da nutzt mir auch kein Nachlesen in den Grundlagen.

    Ich hoffe, dass mir noch jemand erklären kann, was dieser Ausdruck überhaupt macht.
    Irgendwas mit der Zeilenschaltung, aber was genau?

    Bei OSC wurde das auch noch anders für PHP 5.3 geändert:

    Code: PHP  [Auswählen]
    $row = preg_replace("{\n#}", "\n".'\#', $row);
    Ich mag keine regulären Audrücke! :evil:

    Zum Vergleich noch das Original:

    Code: PHP  [Auswählen]
    $row = ereg_replace("\n#", "\n".'\#', $row);

    guensi

    • Viel Schreiber
    • Beiträge: 2.288
    Was bedeutet dieser Ausdruck?
    Antwort #12 am: 28. September 2009, 19:21:49
    Hmm, auf Anhieb wusste ich auch nicht genau was der Ausdruck macht. Aber wenn ich mal meine Perl-Kenntnisse ausgrabe, mal sehen was sich da analysieren lässt:

    Der Ausdruck sucht zuerst nach einem \n (Linefeed oder Zeilenumbruch) direkt gefolgt von einem # Das könnte/müsste dann ein Kommentarbeginn sein.

    Der gefundene Ausdruck wird dann ersetzt durch:
    \n (Linefeed oder Zeilenumbruch), ausführbar durch die "", daher wird hier ein Zeilenumbruch eingebaut.

    . Hmm, grübel. Der Punkt . ist die Abkürzung für eine ganz spezielle Zeichenklasse, die alle Zeichen außer dem Zeilenumbruch beinhaltet. Wird öfter benutzt als wildcard für gierige Abfragen, die nicht nur das nächste gesuchte Zeichen finden, sondern alle darauf folgenden Vorkommen des gesuchten Zeichens, solange es etwas zu finden gibt. Was der jetzt hier im Ersetzen-String zu suchen hat ist mir schleierhaft.

    '\#' setzt ein Kommentarzeichen ein, maskiert durch Backslash und nicht ausführbar wegen ' '.

    Falls diese Ersetzen-Funktion überhaupt was macht, könnte ich mir vorstellen, dass sie nach einem Zeilenumbruch direkt gefolgt von einem Kommentarzeichen sucht, diese beiden Zeichen in zwei separate Zeichen aufspaltet.
    Also erst den Zeilenumbruch,
    dann das Kommentarzeichen.

    Könnte also ein Bugfix sein, damit Zeilenumbruch und Kommentarbeginn in zwei unterschiedlichen Zeilen landen.

    web28

    • modified Team
    • Beiträge: 9.404
    Was bedeutet dieser Ausdruck?
    Antwort #13 am: 29. September 2009, 08:47:47
    Hallo guensi,

    erst einmal vielen Dank für Deine Erklärung.

    Mein Problem hat sich aber dadurch erledigt, das ich für die backup.php jetzt die Auslesefunktionen des Dumpers einbaue. Und da kommt diese Zeile gar nicht vor!

    Gruss Web28

    kopfpilot

    • Frisch an Board
    • Beiträge: 85
    Was bedeutet dieser Ausdruck?
    Antwort #14 am: 29. September 2009, 19:06:13
    Ich halte den Term für schlichtweg falsch .

    Etwas bestimmtes an beliebiger Stelle durch etwas unbestimmtes zu ersetzen macht kein Sinn -> "\n".'\#'

    Der Punkt steht für genau ein oder kein beliebiges Zeichen. Das #-Zeichen braucht nicht escaped werden und ist wegen der single quotes als literal zu sehen.

    Interessanter ist die Frage mit was PHP denn den . ersetzen soll :) Sicherlich mit dem was Sinn macht *schmunzel*

    kopfpilot

    rechtstexte für onlineshop
    4 Antworten
    2223 Aufrufe
    10. November 2015, 13:59:00 von Bonsai
    9 Antworten
    3724 Aufrufe
    21. Juni 2013, 11:57:31 von Marcel G.