Use Shortcodes and PHP in Widgets Without a Plugin By Carrie Dils: http://www.carriedils.com/extend-wordpress-widgets-without-plugin/
// Enable shortcodes in widgets
add_filter('widget_text', 'do_shortcode');
// Enable PHP in widgets
// WARNING: Potential security vulnerability you open by enabling code execution from a widget!
add_filter('widget_text','execute_php',100);
function execute_php($html){
if(strpos($html,"<"."?php")!==false){
ob_start();
eval("?".">".$html);
$html=ob_get_contents();
ob_end_clean();
}
return $html;
}