EisFuX: function_exists()

Beitrag lesen

(Hallo|Hi(ho)|Nabend) Maddin,

=> Das Problem ist weiterhin nur folgendes:
Wie kann ich mit PHP überprüfen, ob die Funktion fsockopen() zugelassen wird? Mit "function_exist()" prüfe ich ja nur, ob die Funktion vorhanden ist.

Das dachte ich auch mal und hatte mir dafür extra eine Funktion zusammengebastelt, die den PHP.ini-Eintrag ausliest, der die "disabled"-ten Funktionen enthält:

  
/// check if given function is disabled  
/// return BOOL or LIST of disabled functions  
function function_is_disabled(  
    $function = NULL /// STR callable function name (no object methods!)  
) {  
    static $disabled = NULL; // caches the list of disabled functions  
    if (NULL === $disabled) {  
        $disabled = array_flip(preg_split(  
            '/\s*,\s*/',  
            trim(ini_get('disable_functions')),  
            -1,  
            PREG_SPLIT_NO_EMPTY  
        ));  
    }  
    if (NULL === $function) { // !func_num_args()  
        return $disabled;  
    }  
    if (isset($disabled[$function])) {  
        return TRUE;  
    }  
    return FALSE;  
}  

Das war vollkommen unnötig, denn function_exists() liefert auch bei deaktivierten Funktionen den Rückgabewert FALSE.

MffG
EisFuX