????
Current Path : /home/rsfshcom/public_html/wp-content/plugins/metform/ |
Current File : /home/rsfshcom/public_html/wp-content/plugins/metform/autoloader.php |
<?php namespace MetForm; defined( 'ABSPATH' ) || exit; /** * MetForm autoloader. * Handles dynamically loading classes only when needed. * * @since 1.0.0 */ class Autoloader { /** * Run autoloader. * Register a function as `__autoload()` implementation. * * @since 1.0.0 * @access public */ public static function run() { spl_autoload_register( [ __CLASS__, 'autoload' ] ); } /** * Autoload. * For a given class, check if it exist and load it. * * @since 1.0.0 * @access private * @param string $class Class name. */ private static function autoload( $class_name ) { // If the class being requested does not start with our prefix // we know it's not one in our project. if ( 0 !== strpos( $class_name, __NAMESPACE__ ) ) { return; } $file_name = strtolower( preg_replace( [ '/\b'.__NAMESPACE__.'\\\/', '/([a-z])([A-Z])/', '/_/', '/\\\/' ], [ '', '$1-$2', '-', DIRECTORY_SEPARATOR], $class_name ) ); // Compile our path from the corosponding location. $file = plugin_dir_path(__FILE__) . $file_name . '.php'; // If a file is found. if ( file_exists( $file ) ) { // Then load it up! require_once( $file ); } } }