kostenloser Webspace werbefrei: lima-city


create_function ab PHP 7.2 deprecated

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    mein-wunschname

    mein-wunschname hat kostenlosen Webspace.

    Hallo, ich hoffe, dass mir jemand helfen kann. Ich bereite zurzeit ein kleines handgestricktes (nicht von mir) CMS auf PHP 7.2. vor. Dabei kommt zu dem folgenden Code
    static function preparse_text($text) {
        $content = preg_replace_callback('/:\s*(\n)?\+{3,}([\S\s]*?)\+{3,}/', create_function('$match', 'return ": |\n  ".preg_replace("/\n/", "\n  ", $match[2]);'), $text);
        return $content;
      }


    die Meldung, dass create_function deprecated ist. Ich habe bei https://stackoverflow.com/questions/48161526/php-7-2-function-create-function-is-deprecated auch gefunden, dass man an Stelle von create_function jetzt function verwenden soll. Das habe ich auch probiert, aber anscheinend mache ich ständig etwas falsch mit Maskierung des regulären Ausdrucks oder vielleicht auch, weil ich die Funktionsweise der anonymen Funktion nicht richtig verstehe/anwende. Falls mir jemand auf die Sprünge helfen kann wäre ich sehr dankbar.


    Beitrag zuletzt geändert: 12.7.2019 15:27:50 von mein-wunschname
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. witze-dschungel

    witze-dschungel hat kostenlosen Webspace.

    Grundsätzlich definierst du eine anonyme Funktion wie eine normale Funktion, mit dem Unterschied, dass du keinen Namen vergibst.

    Heißt, dass du z.B.
    create_function('$a', 'return true;')
    mit
    function ($a) {return true;}
    ersetzt.

    In deinem Fall müsstest du nur den Teil mit create_function:

    create_function('$match', 'return ": |\n  ".preg_replace("/\n/", "\n  ", $match[2]);')

    Mit folgender anonymen Funktion ersetzten:

    function ($match) {return ": |\n  ".preg_replace("/\n/", "\n  ", $match[2]);}


    Auch das preg_replace sollte in der anonymen Funktion problemlos funktionieren.

    Beitrag zuletzt geändert: 14.7.2019 12:51:22 von witze-dschungel
  4. Autor dieses Themas

    mein-wunschname

    mein-wunschname hat kostenlosen Webspace.

    Danke, klappt perfekt.
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!