Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    gestire errori del create_function

    Buongiorno a tutti,
    ho la necessità di creare una funzione dinamica con create_function (o anche altro..)
    Se lo script che viene passato non è compilabile, PHP genera un errore.
    è possibile intercettare questo errore ? (ho provato con try ma si blocca lo stesso a cusa di un fatal error)
    oppure c'è qualche modo per controllare la correttezza del codice
    aggiungo che non so cosa mi venga inserito (= non ho il controllo) del codice della funzione.

  2. #2
    Grazie comunque, ho risolto grazie a nicolas dot grekas+php at gmail dot com
    Codice PHP:
    function eval_syntax($code)
    {
        
    $b 0;

        foreach (
    token_get_all($code) as $token)
        {
                 if (
    '{' == $token) ++$b;
            else if (
    '}' == $token) --$b;
        }

        if (
    $b) return false// Unbalanced braces would break the eval below
        
    else
        {
            
    ob_start(); // Catch potential parse error messages
            
    $code = eval('if(0){' $code '}'); // Put $code in a dead code sandbox to prevent its execution
            
    ob_end_clean();

            return 
    false !== $code;
        }


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.