function IncludeFile($path) { $path = \Nemiro\Server::MapPath($path); if (is_file($path)) { ob_start(); require $path; $r = ob_get_contents(); ob_end_clean(); } else { $r = '<span style="color: Red">Ошибка. Объект <strong>' . $path . '</strong> не является файлом или отсутствует.</span>'; } return $r; }
/** * Includes the specified file. * * @param \string|\string[] $path The file path to include. */ public static function IncludeFile($path) { if (gettype($path) == 'array') { foreach ($path as $p) { App::IncludeFile($p); } } else { if (substr($path, 0, 1) == '~') { $path = \Nemiro\Server::MapPath($path); } if (is_dir($path)) { if (is_file($path . '/Import.php')) { App::IncludeFile($path . '/Import.php'); } else { throw new \ErrorException('`' . $path . '/Import.php` not found. Specify the full path to a file, or create import rules.'); } } else { require_once $path; App::RaiseEvent('Application_IncludedFile', $path); } } }
private function MergeResources($path) { $path = \Nemiro\Server::MapPath($path); if (file_exists($path)) { if (!($data = json_decode(file_get_contents($path), TRUE))) { \Nemiro\Console::Error('Resources file "%s" parse error #%s.', $path, json_last_error()); return FALSE; } else { if (!isset($this->Resources)) { $this->Resources = array(); } foreach ($data as $item) { $this->Resources[$item['Key']] = $item['Value']; } return TRUE; } } else { return FALSE; } }
<php:Items> <php:TabItem Key="TabControl" Title="TabControl.php"> <pre><code class="php"><?php echo str_replace("\t", ' ', \Nemiro\Text::HtmlEncode(file_get_contents(\Nemiro\Server::MapPath('~/Controls/TabControl.php')))); ?> </code></pre> </php:TabItem> <php:TabItem Key="TabItem" Title="TabItem.php"> <pre><code class="php"><?php echo str_replace("\t", ' ', \Nemiro\Text::HtmlEncode(file_get_contents(\Nemiro\Server::MapPath('~/Controls/TabItem.php')))); ?> </code></pre> </php:TabItem> <php:TabItem Key="TabControlHtml" Title="TabControl.html.php"> <pre><code class="html"><?php echo str_replace("\t", ' ', \Nemiro\Text::HtmlEncode(file_get_contents(\Nemiro\Server::MapPath('~/Controls/TabControl.html.php')))); ?> </code></pre> </php:TabItem> </php:Items> </php:TabControl> <p>${ObjectModelText10}</p> <p>${ObjectModelText11}</p> <pre><code class="html"><php:TabControl> <php:Items> <php:TabItem Key="Item1" Title="${Tab} #1"> ${TabContent} #1 </php:TabItem> <php:TabItem Key="Item2" Title="${Tab} #2"> ${TabContent} #2 </php:TabItem>