3v4l.org

run code in 300+ PHP versions simultaneously
<?php function my_send_email($to, $subject, $body, $from_email = '', $from_name = '') { if ($from_email && $from_name) { // Closure instead of globals $f = static function ($phpmailer) use ($from_email, $from_name) { $phpmailer->From = $from_email; $phpmailer->FromName = $from_name; }; // Overwriting default settings remove_action('phpmailer_init', 'my_phpmailer_smtp'); add_action('phpmailer_init', $f); } else { $from_name = 'Info'; $from_email = 'info@domain.com'; } } function my_send_email2($to, $subject, $body, $from_email = '', $from_name = '') { if ($from_email && $from_name) { // Overwriting default settings remove_action('phpmailer_init', 'my_phpmailer_smtp'); // Inline the function add_action( 'phpmailer_init', static function ($phpmailer) use ($from_email, $from_name) { $phpmailer->From = $from_email; $phpmailer->FromName = $from_name; } ); } else { $from_name = 'Info'; $from_email = 'info@domain.com'; } }
Output for 8.1.29 - 8.1.33, 8.2.19 - 8.2.29, 8.3.5 - 8.3.25, 8.4.1 - 8.4.12

preferences:
58.63 ms | 406 KiB | 5 Q