src/bbn/mvc.php
public function get_external_view(string $full_path, string $mode = 'html', array $data=null){
    if ( !router::is_mode($mode) ){
      die("Incorrect mode $full_path $mode");
    }
    if ( ($this->get_mode() === 'dom') && (!defined('BBN_DEFAULT_MODE') || (BBN_DEFAULT_MODE !== 'dom')) ){
      $full_path .= ($full_path === '' ? '' : '/').'index';
    }
    $view = null;
    if ( $this->has_view($full_path, $mode) ){
      $view = self::$loaded_views[$mode][$full_path];
    }
    else if ( $info = $this->router->route(basename($full_path), 'free-'.$mode, \dirname($full_path)) ){
      $view = new mvc\view($info);
      $this->add_to_views($full_path, $mode, $view);
    }
    if ( \is_object($view) && $view->check() ){
      return \is_array($data) ? $view->get($data) : $view->get();
    }
    return '';
  }
public function get_external_view(string $full_path, string $mode = 'html', array $data=null){
    if ( !router::is_mode($mode) ){
      die("Incorrect mode $full_path $mode");
    }
    if ( ($this->get_mode() === 'dom') && (!defined('BBN_DEFAULT_MODE') || (BBN_DEFAULT_MODE !== 'dom')) ){
      $full_path .= ($full_path === '' ? '' : '/').'index';
    }
    $view = null;
    if ( $this->has_view($full_path, $mode) ){
      $view = self::$loaded_views[$mode][$full_path];
    }
    else if ( $info = $this->router->route(basename($full_path), 'free-'.$mode, \dirname($full_path)) ){
      $view = new mvc\view($info);
      $this->add_to_views($full_path, $mode, $view);
    }
    if ( \is_object($view) && $view->check() ){
      return \is_array($data) ? $view->get($data) : $view->get();
    }
    return '';
  }
public function get_external_view ( string $ full_path , string $ mode = 'html' , array $ data = null ) { if ( ! router :: is_mode ( $ mode ) ) { die ( "Incorrect mode $full_path $mode" ) ; } if ( ( $ this -> get_mode ( ) === 'dom' ) && ( ! defined ( 'BBN_DEFAULT_MODE' ) || ( BBN_DEFAULT_MODE !== 'dom' ) ) ) { $ full_path .= ( $ full_path === '' ? '' : '/' ) . 'index' ; } $ view = null ; if ( $ this -> has_view ( $ full_path , $ mode ) ) { $ view = self :: $ loaded_views [ $ mode ] [ $ full_path ] ; } else if ( $ info = $ this -> router -> route ( basename ( $ full_path ) , 'free-' . $ mode , \ dirname ( $ full_path ) ) ) { $ view = new mvc \ view ( $ info ) ; $ this -> add_to_views ( $ full_path , $ mode , $ view ) ; } if ( \ is_object ( $ view ) && $ view -> check ( ) ) { return \ is_array ( $ data ) ? $ view -> get ( $ data ) : $ view -> get ( ) ; } return '' ; }
This will get a view from a different root.

@param string $full_path
@param string $mode
@param array $data
@return string|false
This will get a view from a different root .