WordPress at a glance
function is not described

menu_page_url() WP 3.0.0

Get the url to access a particular menu page based on the slug it was registered with.

If the slug hasn't been registered properly no url will be returned

  • Global. Array. $_parent_pages

No Hooks.

Return

String. the url

Usage

menu_page_url( $menu_slug, $echo );
$menu_slug(string) (required)
The slug name to refer to this menu by (should be unique for this menu)
$echo(true/false)
Whether or not to echo the url - default is true
Default: true

Code of menu page url: wp-admin/includes/plugin.php VER 5.1.1

<?php
function menu_page_url( $menu_slug, $echo = true ) {
	global $_parent_pages;

	if ( isset( $_parent_pages[ $menu_slug ] ) ) {
		$parent_slug = $_parent_pages[ $menu_slug ];
		if ( $parent_slug && ! isset( $_parent_pages[ $parent_slug ] ) ) {
			$url = admin_url( add_query_arg( 'page', $menu_slug, $parent_slug ) );
		} else {
			$url = admin_url( 'admin.php?page=' . $menu_slug );
		}
	} else {
		$url = '';
	}

	$url = esc_url( $url );

	if ( $echo ) {
		echo $url;
	}

	return $url;
}