Come posso scrivere alla console in PHP?

È possibile scrivere una stringa o un log nella console?

Cosa voglio dire

Proprio come in JSP, se stampiamo qualcosa come system.out.println("some"), sarà presente nella console, non in una pagina.

Oppure usate il trucco di PHP Debug to console.

Prima hai bisogno di una piccola funzione di aiuto PHP

function debug_to_console($data) {
    $output = $data;
    if (is_array($output))
        $output = implode(',', $output);

    echo "<script>console.log('Debug Objects: " . $output . "' );</script>";
}

Poi puoi usarla in questo modo:

debug_to_console("Test");

Questo creerà un output come questo:

Debug Objects: Test
Commentari (13)
Soluzione

Firefox

Su Firefox puoi usare un'estensione chiamata FirePHP che permette di registrare e scaricare informazioni dalle tue applicazioni PHP alla console. Questo è un addon alla fantastica estensione per lo sviluppo web Firebug.

{\an8}Cromatografia

Comunque se stai usando Chrome c'è uno strumento di debug PHP chiamato Chrome Logger o webug (webug ha problemi con l'ordine dei log).

Più recentemente è in attivo lo sviluppo di Clockwork che estende gli strumenti di sviluppo aggiungendo un nuovo pannello per fornire utili informazioni di debug e profiling. Fornisce supporto out of the box per Laravel 4 e Slim 2 e il supporto può essere aggiunto tramite le sue API estensibili.

Utilizzo di Xdebug

Un modo migliore per eseguire il debug di PHP sarebbe tramite Xdebug. La maggior parte dei browser fornisce estensioni di aiuto per aiutarvi a passare la stringa di cookie/query richiesta per inizializzare il processo di debug.

Commentari (9)

Per impostazione predefinita, tutto l'output va a stdout, che è la risposta HTTP o la console, a seconda che lo script sia eseguito da Apache o manualmente sulla linea di comando. Ma puoi usare error_log per il logging e vari flussi I/O possono essere scritti con fwrite.

Commentari (1)