# defender-security/6.0.1/src/extra/maxmind-db/reader/autoload.php

Defender Security – Malware Scanner, Login Security &amp; Firewall, version 6.0.1. 47 lines.

- Page: https://pluginprobe.com/plugins/defender-security/6.0.1/code/src/extra/maxmind-db/reader/autoload.php
- Raw: https://pluginprobe.com/plugins/defender-security/6.0.1/raw/src/extra/maxmind-db/reader/autoload.php
- Modified: 2024-11-11T09:48:44+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/defender-security/6.0.1/code/src/extra/maxmind-db/reader/autoload.php#L10-L20`.

```php
<?php

declare( strict_types=1 );

/**
 * PSR-4 autoloader implementation for the MaxMind\DB namespace.
 * First we define the 'mmdb_autoload' function, and then we register
 * it with 'spl_autoload_register' so that PHP knows to use it.
 *
 * @param mixed $class
 */

/**
 * Automatically include the file that defines <code>class</code>.
 *
 * @param string $class
 *                      the name of the class to load
 */
function mmdb_autoload( $class ): void {
	/*
	* A project-specific mapping between the namespaces and where
	* they're located. By convention, we include the trailing
	* slashes. The one-element array here simply makes things easy
	* to extend in the future if (for example) the test classes
	* begin to use one another.
	*/
	$namespace_map = [ 'MaxMind\\Db\\' => __DIR__ . '/src/MaxMind/Db/' ];

	foreach ( $namespace_map as $prefix => $dir ) {
		// First swap out the namespace prefix with a directory...
		$path = str_replace( $prefix, $dir, $class );

		// replace the namespace separator with a directory separator...
		$path = str_replace( '\\', '/', $path );

		// and finally, add the PHP file extension to the result.
		$path = $path . '.php';

		// $path should now contain the path to a PHP file defining $class
		if ( file_exists( $path ) ) {
			include $path;
		}
	}
}

spl_autoload_register( 'mmdb_autoload' );

```
