display error message in php

PHP
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
/* Display all errors like dev */
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

/* Display PROD errors */
ini_set('display_errors', 1);
ini_set('display_startup_errors', 0);
error_reporting(E_ALL & ~E_NOTICE);

/* OTHER SETTINGS*/

// Report simple running errors
error_reporting(E_ERROR | E_WARNING | E_PARSE);

// Reporting E_NOTICE 
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);

// Report all errors except E_NOTICE
error_reporting(E_ALL & ~E_NOTICE);
// For PHP < 5.3
error_reporting(E_ALL ^ E_NOTICE);

// Report all PHP errors
error_reporting(E_ALL);
//or
error_reporting(-1);
//or
error_reporting(0);/* Answer to: "php error reporting" */

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

/*
  What do these lines of code do exactly?

  The ini_set function will try to override the configuration found
  in your PHP ini file.

  The display_errors and display_startup_errors are just two of the
  directives that are available. The display_errors directive will
  determine if the errors will be displayed or hidden to the user.
  Usually, the dispay_errors directive should be turned off after
  development.

  The display_startup_errors, however, is a separate directive
  because the display_errors doesn’t handle the errors that will be
  encountered during PHP’s startup sequence. The list of the
  directives that can be overridden by the ini_set function is found
  in the official documentation.
*/
Source

Also in PHP: