php - stripslashesdeep

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/php-stripslashesdeep_242959/page_1 - zur Vollversion wechseln!


11Fire01 schrieb am 17.05.2015 um 10:32

im grunde weiß ich was es tut, doch nicht ganz in dieser schreibweise hier.

Code: PHP
function stripSlashesDeep($value)
{
    $value = is_array($value) ? array_map('stripSlashesDeep',$value) : stripslashes($value);

    return $value
}

was genau macht array_map hier und wieso kann es die funktion stripSlashesDeep in dieser Schreibweise als string, in sich selbst (innheralb der funktion), aufrufen (oder auch nicht???) ??


mat schrieb am 17.05.2015 um 13:11

Nicht viel Magie hier. Lies mal nach, was array_map() tut. Der erste Parameter ist ein "callable" und damit eine Funktion, die für jeden Array-Eintrag aufgerufen wird. Wenn ein Array ein weiteres Array in sich trägt, dann ruft sich die Funktion selbst noch einmal auf, um auch diese Array-Einträge zu bearbeiten. Erst wenn der Parameter $value kein Array mehr ist, wird stripslashes() ausgeführt.

Callables können übrigens mit unterschiedlichsten Schreibweisen angegeben werden. Ein simpler String für eine globale Funktion ist die leichteste Methode. Mehr dazu hier.


11Fire01 schrieb am 18.05.2015 um 01:42

ah danke. das mit dem nochmals aufrufen war es.




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025