hello I'm a wordpress theme developer. i produced a style which works fine in Wordpress_DEBUG=False but will get undefined index error after i set Wordpress_DEBUG=True

My theme comes with an options page, whenever i click save i recieve these errors:

Notice: Undefined index: ang_temp in C:\xampp\htdocs\wordpress\wp-content\themes\Angelia\functions.php  on line 147

Notice: Undefined index: ang_breadcrumbs in C:\xampp\htdocs\wordpress\wp-content\themes\Angelia\functions.php on line 147

Notice: Undefined index: ang_hide_social in C:\xampp\htdocs\wordpress\wp-content\themes\Angelia\functions.php on line 147

Notice: Undefined index: ang_hide_tw in C:\xampp\htdocs\wordpress\wp-content\themes\Angelia\functions.php on line 147

Notice: Undefined index: ang_hide_fb in C:\xampp\htdocs\wordpress\wp-content\themes\Angelia\functions.php on line 147

Notice: Undefined index: ang_hide_ms in C:\xampp\htdocs\wordpress\wp-content\themes\Angelia\functions.php on line 147

Notice: Undefined index: ang_hide_rss in C:\xampp\htdocs\wordpress\wp-content\themes\Angelia\functions.php on line 147

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\wordpress\wp-content\themes\Angelia\functions.php:147) in C:\xampp\htdocs\wordpress\wp-content\themes\Angelia\functions.php on line 156

Here's my styles functions.php I'm not sure things i am doing wrong. I've super little understanding about php. Hope men with php understanding or wordpress theme development understanding might help.

146. foreach ($options as $value) {
147.   update_option( $value['id'], $_REQUEST[ $value['id'] ] ); }

The part of code that is creating this error (above) isn't checking whether $_REQUEST[ $value['id'] ] is available. The errors you are receiving claim that it does not (you will simply understand this notice with full error checking enabled). Other areas of the code are checking the presence of this variable before utilizing it (so that they are OK) and indicate you ought to be doing exactly the same here.

You say your theme works OK when debug is off, which means this indicate that you simply only have to check the presence of this variable before utilizing it. Something similar to (changing the two lines above):

foreach ($options as $value) {
  if (isset($_REQUEST[ $value['id'] ])) {
    update_option( $value['id'], $_REQUEST[ $value['id'] ] );
  }
}

However, even though this should stop your 'errors' (they're only notices really), I am not really acquainted with wordpress styles so can't say without a doubt whether this really is expected behavior or whether there's something underlying that is to blame.