No, or die è una funzione e non è influenzata da error_reporting.
Se la funzione c'è, allora verrà eseguita quando si verifica la condizione prevista.
Se vuoi evitare di stampare gli errori in fase di produzione non vedo altra via che usare una variabile per sapere se sei in fase di debug o meno.
Tu ora hai qualcosa di simile a questo
codice:
$link = mysql_connect("localhost", "mysql_user", "mysql_password") or die('Errore nella connessione al database);
Dovresti, invece, scrivere qualcosa del tipo
codice:
$debug = true;
if(!$link = mysql_connect("localhost", "mysql_user", "mysql_password") && $debug)
die('Errore nella connessione al database);