Battute a parte, non è che si può sempre fare tutto con una riga di codice.Codice PHP:
$p_get = (!empty($_GET['p'])) ? $_GET['p'] : '';$_GET['p'] = max( 0, intval($p_get) );
Tra l'altro se proprio vuoi ottimizzare e rendere pià elegante il codice, io inizierei evitando di assegnare cose alla variabile superglobale $_GET, quella sarebbe meglio lasciarla gestire al server.
Per esempio puoi continuare ad usare $p_get anche per la seconda riga di codice.
Sì, puoi usare $p_get sia prima che dopo il segno = e funzionerà tutto correttamente.