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

    Funzione dentro funzione.

    Come identifico una funzione dentro un'altra funzione?
    E come le eseguo queste?

    Codice PHP:
    function a() {
        if (...) {
            while (...) {
                 function 
    c() {
                 }
            }
         }
    }
    a(c()); /* qui se metto a(); allora mi viene scritto: Fatal error: Call to undefined function c() in C:\Program Files\EASYPHP\www\home.php on line 167 */

    function b() {
    (...)
        while (...) {
             
    a(c()); /*qui come eseguo questo comando? che errore di sintassi vengo ad incontrare?*/
        
    }
    (...)
    }
    b() 
    AIUTO

  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    Ciao, spiega meglio cosa vorresti fare.. sicuramente potrebbe essere piu' facile da risolvere.

  3. #3
    Utente di HTML.it L'avatar di andbaz
    Registrato dal
    Jul 2011
    Messaggi
    441
    Chiedo scusa, quello che voglio fare è diciamo poter evitare una funzione, che si trova dentro ad un'altra, è possibile? Per questo ho indentificato come funzione c(); parte di codice della funzione a(); solo per dividerle e dare a loro indipendenza tra di loro.
    Mi spiego?

  4. #4
    Originariamente inviato da andbaz
    Chiedo scusa, quello che voglio fare è diciamo poter evitare una funzione, che si trova dentro ad un'altra, è possibile? Per questo ho indentificato come funzione c(); parte di codice della funzione a(); solo per dividerle e dare a loro indipendenza tra di loro.
    Mi spiego?
    No, non ho capito perche' dichiari una funzione dentro un'altra.

  5. #5
    Utente di HTML.it L'avatar di andbaz
    Registrato dal
    Jul 2011
    Messaggi
    441
    Cioè: come eseguo una variabile, con dentro una variabile, però senza quest'ultima.
    E' difficile, è per realizzare una serie di cicli, sto creando un piccolo guestbook.

  6. #6
    Utente di HTML.it L'avatar di Luke70
    Registrato dal
    Jul 1999
    Messaggi
    767
    Non credo si possa fare quello che tu dici.
    O separi le funzioni e scegli cosa eseguire oppure utilizzi dei costrutti condizionali (if o switch) per scegliere quali parti di codice far eseguire.

  7. #7
    oddio ma che casino....

    cmq

    codice:
    function c(){ }
    ti faccio notare che la dichiari la funzione, non è che la esegui...quindi non capisco che cosa ci farebbe dentro un ciclo while..per poi precisare che non puoi dichiarare funzioni nested, piuttosto lambda function...cioè se magari riuscissi a fare un piccolo esempio di quello che devi fare, si potrebbe aiutarti meglio... ad esempio:

    Codice PHP:


    $c 
    = function(){ ... };

    function 
    a($callable){
    ..
    while(){
    $callable();
    }
    ...

    }

    function 
    b(){
    ...
    while(){
     
    a($c);
    }
    ...


    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  8. #8
    Utente di HTML.it L'avatar di andbaz
    Registrato dal
    Jul 2011
    Messaggi
    441
    Ti ringrazio per l'esempio, forse ora credo di avere capito una cosa, e si, in effetti ho fatto una cosa stupida e errata, la funzione potevo benissimo dichiararla fuori, cmq ora dvo riflettere, probabilmented non arriverò ad una conclusione, mi faccio sentire qui se non ne verrò a capo, anche perchè la cosa è semplice. Difficile da eseguire.

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.