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

    funzione php print_r() incide su print

    Non capisco; c'è qualcosa che va al di la delle mie conoscenze. Come è possibile un comportamento del genere? L'ho scritto nel quadrante di codice php di seguito
    Codice PHP:
    $user $result->getUser();
    /***
     * Qui sembra tutto a posto. Infatti facendo molte prove gli oggetti
     * restituiti hanno la struttura predefinita
     */

    print_r($user['birthday']);
    print
    "<p>birthday = " $user['birthday']->date "</p>";
    /***
     * Funziona benissimo la seconda riga stampa [ $user['birthday']->date ] senza problemi
     * 
     */

    # print_r($user['birthday']);
    print"<p>birthday = " $user['birthday']->date "</p>";
    /***
     * Ovviamente non mi serve l'oggetto a video era solo un piccolo debug
     * quindi commento la riga del print_r()
     * Ma la seconda riga non stampa $user['birthday']->date
     * 
     * Come risolvo?
     */ 
    Ultima modifica di rel_style; 25-08-2015 a 10:31 Motivo: Incompleto! Non si capiva cosa volevo chiedere

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Sinceramente non ho capito.
    Secondo te nella seconda stampa mancano le parentesi quadre esterne?

    Io più che altro mi preoccuperei del fatto che print ti abbia stampato il codice e non il contenuto di $user['birthday']->date

    Sempre se ho ben interpretato ciò che hai scritto.

  3. #3
    Il codice è indentato bene?
    // e # sono commenti one-line commentano fino a fine riga. Non è che le due istruzioni si trovano sulla stessa riga?

    comments
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  4. #4
    In questo caso
    Codice PHP:
    $user $result->getUser();
    print_r($user['birthday']);
    print
    "<p>birthday = " $user['birthday']->date "</p>"

    la terza riga stampa birthday = 1967-09-11 00:00:00. Quindi tutto OK.


    In questo altro caso invece
    Codice PHP:
    $user $result->getUser();
    #print_r($user['birthday']);
    print"<p>birthday = " $user['birthday']->date "</p>"

    la terza riga stampa birthday = null


    L'oggetto e il codice è indentato bene.

  5. #5
    Utente di HTML.it L'avatar di .Kurt
    Registrato dal
    Jul 2007
    Messaggi
    654
    Puoi farci un piccolo esempio per replicare il problema?

  6. #6
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Ovviamente il problema non è che ci sia o meno il print_r() sarebbe abbastanza ridicolo.
    Molto più probabilmente c'è qualche magagna nel codice.
    Se la riga con il print_r() invece di commentarla la cancelli proprio che succede?

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 © 2024 vBulletin Solutions, Inc. All rights reserved.