本文整理汇总了PHP中die_nicely函数的典型用法代码示例。如果您正苦于以下问题:PHP die_nicely函数的具体用法?PHP die_nicely怎么用?PHP die_nicely使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了die_nicely函数的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: generate
/**
* Redirect to an internal page
* @param \PageModel $objPage
*/
public function generate($objPage)
{
// Forward to the jumpTo or first published page
if ($objPage->jumpTo) {
/** @var \PageModel $objNextPage */
$objNextPage = $objPage->getRelated('jumpTo');
} else {
$objNextPage = \PageModel::findFirstPublishedRegularByPid($objPage->id);
}
// Forward page does not exist
if ($objNextPage === null) {
header('HTTP/1.1 404 Not Found');
$this->log('Forward page ID "' . $objPage->jumpTo . '" does not exist', __METHOD__, TL_ERROR);
die_nicely('be_no_forward', 'Forward page not found');
}
$strForceLang = null;
// Check the target page language (see #4706)
if (\Config::get('addLanguageToUrl')) {
$objNextPage->loadDetails();
// see #3983
$strForceLang = $objNextPage->language;
}
$strGet = '';
$strQuery = \Environment::get('queryString');
$arrQuery = array();
// Extract the query string keys (see #5867)
if ($strQuery != '') {
$arrChunks = explode('&', $strQuery);
foreach ($arrChunks as $strChunk) {
list($k, ) = explode('=', $strChunk, 2);
$arrQuery[] = $k;
}
}
// Add $_GET parameters
if (!empty($_GET)) {
foreach (array_keys($_GET) as $key) {
if (\Config::get('disableAlias') && $key == 'id') {
continue;
}
if (\Config::get('addLanguageToUrl') && $key == 'language') {
continue;
}
// Ignore the query string parameters (see #5867)
if (in_array($key, $arrQuery)) {
continue;
}
// Ignore the auto_item parameter (see #5886)
if ($key == 'auto_item') {
$strGet .= '/' . \Input::get($key);
} else {
$strGet .= '/' . $key . '/' . \Input::get($key);
}
}
}
// Append the query string (see #5867)
if ($strQuery != '') {
$strQuery = '?' . $strQuery;
}
$this->redirect($this->generateFrontendUrl($objNextPage->row(), $strGet, $strForceLang) . $strQuery, $objPage->redirect == 'temporary' ? 302 : 301);
}
示例2: generate
/**
* Generate an error 403 page
* @param integer
* @param object
*/
public function generate($pageId, $objRootPage = null)
{
// Add a log entry
$this->log('Access to page ID "' . $pageId . '" denied', __METHOD__, TL_ERROR);
// Use the given root page object if available (thanks to Andreas Schempp)
if ($objRootPage === null) {
$objRootPage = $this->getRootPageFromUrl();
} else {
$objRootPage = \PageModel::findPublishedById(is_integer($objRootPage) ? $objRootPage : $objRootPage->id);
}
// Look for an error_403 page
$obj403 = \PageModel::find403ByPid($objRootPage->id);
// Die if there is no page at all
if ($obj403 === null) {
header('HTTP/1.1 403 Forbidden');
die_nicely('be_forbidden', 'Forbidden');
}
// Generate the error page
if (!$obj403->autoforward || !$obj403->jumpTo) {
global $objPage;
$objPage = $obj403->loadDetails();
$objHandler = new $GLOBALS['TL_PTY']['regular']();
header('HTTP/1.1 403 Forbidden');
$objHandler->generate($objPage);
exit;
}
// Forward to another page
$objNextPage = \PageModel::findPublishedById($obj403->jumpTo);
if ($objNextPage === null) {
header('HTTP/1.1 403 Forbidden');
$this->log('Forward page ID "' . $obj403->jumpTo . '" does not exist', __METHOD__, TL_ERROR);
die_nicely('be_no_forward', 'Forward page not found');
}
$this->redirect($this->generateFrontendUrl($objNextPage->row(), null, $objRootPage->language), $obj403->redirect == 'temporary' ? 302 : 301);
}
示例3: generate
/**
* Generate an error 404 page
*
* @param integer $pageId
* @param string $strDomain
* @param string $strHost
* @param boolean $blnUnusedGet
*/
public function generate($pageId, $strDomain = null, $strHost = null, $blnUnusedGet = false)
{
// Add a log entry
if ($blnUnusedGet) {
$this->log('The request for page ID "' . $pageId . '" contained unused GET parameters: "' . implode('", "', \Input::getUnusedGet()) . '" (' . \Environment::get('base') . \Environment::get('request') . ')', __METHOD__, TL_ERROR);
} elseif ($strDomain !== null || $strHost !== null) {
$this->log('Page ID "' . $pageId . '" was requested via "' . $strHost . '" but can only be accessed via "' . $strDomain . '" (' . \Environment::get('base') . \Environment::get('request') . ')', __METHOD__, TL_ERROR);
} elseif ($pageId != 'favicon.ico' && $pageId != 'robots.txt') {
$this->log('No active page for page ID "' . $pageId . '", host "' . \Environment::get('host') . '" and languages "' . implode(', ', \Environment::get('httpAcceptLanguage')) . '" (' . \Environment::get('base') . \Environment::get('request') . ')', __METHOD__, TL_ERROR);
}
// Check the search index (see #3761)
\Search::removeEntry(\Environment::get('request'));
// Find the matching root page
$objRootPage = $this->getRootPageFromUrl();
// Forward if the language should be but is not set (see #4028)
if (\Config::get('addLanguageToUrl')) {
// Get the request string without the index.php fragment
if (\Environment::get('request') == 'index.php') {
$strRequest = '';
} else {
$strRequest = str_replace('index.php/', '', \Environment::get('request'));
}
// Only redirect if there is no language fragment (see #4669)
if ($strRequest != '' && !preg_match('@^[a-z]{2}(-[A-Z]{2})?/@', $strRequest)) {
// Handle language fragments without trailing slash (see #7666)
if (preg_match('@^[a-z]{2}(-[A-Z]{2})?$@', $strRequest)) {
$this->redirect(($GLOBALS['TL_CONFIG']['rewriteURL'] ? '' : 'index.php/') . $strRequest . '/', 301);
} else {
$this->redirect(($GLOBALS['TL_CONFIG']['rewriteURL'] ? '' : 'index.php/') . $objRootPage->language . '/' . $strRequest, 301);
}
}
}
// Look for a 404 page
$obj404 = \PageModel::find404ByPid($objRootPage->id);
// Die if there is no page at all
if (null === $obj404) {
header('HTTP/1.1 404 Not Found');
die_nicely('be_no_page', 'Page not found');
}
// Generate the error page
if (!$obj404->autoforward || !$obj404->jumpTo) {
/** @var \PageModel $objPage */
global $objPage;
$objPage = $obj404->loadDetails();
/** @var \PageRegular $objHandler */
$objHandler = new $GLOBALS['TL_PTY']['regular']();
header('HTTP/1.1 404 Not Found');
$objHandler->generate($objPage);
exit;
}
// Forward to another page
$objNextPage = \PageModel::findPublishedById($obj404->jumpTo);
if (null === $objNextPage) {
header('HTTP/1.1 404 Not Found');
$this->log('Forward page ID "' . $obj404->jumpTo . '" does not exist', __METHOD__, TL_ERROR);
die_nicely('be_no_forward', 'Forward page not found');
}
$this->redirect($this->generateFrontendUrl($objNextPage->row(), null, $objRootPage->language), $obj404->redirect == 'temporary' ? 302 : 301);
}
示例4: show_help_message
/**
* Show a special Contao "what to do in case of an error" message
*/
function show_help_message()
{
if (ini_get('display_errors')) {
return;
}
header('HTTP/1.1 500 Internal Server Error');
die_nicely('be_error', 'An error occurred while executing this script!');
}
示例5: generate
/**
* Redirect to the first active regular page
* @param integer
* @param boolean
* @return integer
* @return integer
*/
public function generate($pageId, $blnReturn = false)
{
$objNextPage = \PageModel::findFirstPublishedByPid($pageId);
// No published pages yet
if ($objNextPage === null) {
header('HTTP/1.1 404 Not Found');
$this->log('No active page found under root page "' . $pageId . '")', __METHOD__, TL_ERROR);
die_nicely('be_no_active', 'No active pages found');
}
if (!$blnReturn) {
global $objPage;
$this->redirect($this->generateFrontendUrl($objNextPage->row(), null, $objPage->language));
}
return $objNextPage->id;
}
示例6: generate
/**
* Redirect to the first active regular page
*
* @param integer $pageId
* @param boolean $blnReturn
* @param boolean $blnPreferAlias
*
* @return integer
*/
public function generate($pageId, $blnReturn = false, $blnPreferAlias = false)
{
$objNextPage = \PageModel::findFirstPublishedByPid($pageId);
// No published pages yet
if (null === $objNextPage) {
header('HTTP/1.1 404 Not Found');
$this->log('No active page found under root page "' . $pageId . '"', __METHOD__, TL_ERROR);
die_nicely('be_no_active', 'No active pages found');
}
if (!$blnReturn) {
$this->redirect($objNextPage->getFrontendUrl());
}
if ($blnPreferAlias && $objNextPage->alias != '') {
return $objNextPage->alias;
}
return $objNextPage->id;
}
示例7: __construct
/**
* Initialize the object
*/
public function __construct()
{
// Load the user object before calling the parent constructor
\FrontendUser::getInstance();
parent::__construct();
// Check whether a user is logged in
define('BE_USER_LOGGED_IN', $this->getLoginStatus('BE_USER_AUTH'));
define('FE_USER_LOGGED_IN', $this->getLoginStatus('FE_USER_AUTH'));
// No back end user logged in
if (!$_SESSION['DISABLE_CACHE']) {
// Maintenance mode (see #4561 and #6353)
if (\Config::get('maintenanceMode')) {
header('HTTP/1.1 503 Service Unavailable');
die_nicely('be_unavailable', 'This site is currently down for maintenance. Please come back later.');
}
// Disable the debug mode (see #6450)
\Config::set('debugMode', false);
}
}
示例8: getPageLayout
/**
* Get a page layout and return it as database result object
*
* @param \PageModel $objPage
*
* @return \LayoutModel
*/
protected function getPageLayout($objPage)
{
$blnMobile = $objPage->mobileLayout && \Environment::get('agent')->mobile;
// Set the cookie
if (isset($_GET['toggle_view'])) {
if (\Input::get('toggle_view') == 'mobile') {
$this->setCookie('TL_VIEW', 'mobile', 0);
} else {
$this->setCookie('TL_VIEW', 'desktop', 0);
}
$this->redirect($this->getReferer());
}
// Override the autodetected value
if (\Input::cookie('TL_VIEW') == 'mobile') {
$blnMobile = true;
} elseif (\Input::cookie('TL_VIEW') == 'desktop') {
$blnMobile = false;
}
$intId = $blnMobile && $objPage->mobileLayout ? $objPage->mobileLayout : $objPage->layout;
$objLayout = \LayoutModel::findByPk($intId);
// Die if there is no layout
if (null === $objLayout) {
header('HTTP/1.1 501 Not Implemented');
$this->log('Could not find layout ID "' . $intId . '"', __METHOD__, TL_ERROR);
die_nicely('be_no_layout', 'No layout specified');
}
$objPage->hasJQuery = $objLayout->addJQuery;
$objPage->hasMooTools = $objLayout->addMooTools;
$objPage->isMobile = $blnMobile;
return $objLayout;
}
示例9: run
/**
* Run the controller
*/
public function run()
{
global $objPage;
$pageId = $this->getPageIdFromUrl();
$objRootPage = null;
// Load a website root page object if there is no page ID
if ($pageId === null) {
$objRootPage = $this->getRootPageFromUrl();
$objHandler = new $GLOBALS['TL_PTY']['root']();
$pageId = $objHandler->generate($objRootPage->id, true);
} elseif ($pageId === false) {
$this->User->authenticate();
$objHandler = new $GLOBALS['TL_PTY']['error_404']();
$objHandler->generate($pageId);
} elseif (Config::get('rewriteURL') && strncmp(Environment::get('request'), 'index.php/', 10) === 0) {
$this->User->authenticate();
$objHandler = new $GLOBALS['TL_PTY']['error_404']();
$objHandler->generate($pageId);
}
// Get the current page object(s)
$objPage = PageModel::findPublishedByIdOrAlias($pageId);
// Check the URL and language of each page if there are multiple results
if ($objPage !== null && $objPage->count() > 1) {
$objNewPage = null;
$arrPages = array();
// Order by domain and language
while ($objPage->next()) {
$objCurrentPage = $objPage->current()->loadDetails();
$domain = $objCurrentPage->domain ?: '*';
$arrPages[$domain][$objCurrentPage->rootLanguage] = $objCurrentPage;
// Also store the fallback language
if ($objCurrentPage->rootIsFallback) {
$arrPages[$domain]['*'] = $objCurrentPage;
}
}
$strHost = Environment::get('host');
// Look for a root page whose domain name matches the host name
if (isset($arrPages[$strHost])) {
$arrLangs = $arrPages[$strHost];
} else {
$arrLangs = $arrPages['*'] ?: array();
// empty domain
}
// Use the first result (see #4872)
if (!Config::get('addLanguageToUrl')) {
$objNewPage = current($arrLangs);
} elseif (($lang = Input::get('language')) != '' && isset($arrLangs[$lang])) {
$objNewPage = $arrLangs[$lang];
}
// Store the page object
if (is_object($objNewPage)) {
$objPage = $objNewPage;
}
}
// Throw a 404 error if the page could not be found or the result is still ambiguous
if ($objPage === null || $objPage instanceof Model\Collection && $objPage->count() != 1) {
$this->User->authenticate();
$objHandler = new $GLOBALS['TL_PTY']['error_404']();
$objHandler->generate($pageId);
}
// Make sure $objPage is a Model
if ($objPage instanceof Model\Collection) {
$objPage = $objPage->current();
}
// Load a website root page object (will redirect to the first active regular page)
if ($objPage->type == 'root') {
$objHandler = new $GLOBALS['TL_PTY']['root']();
$objHandler->generate($objPage->id);
}
// Inherit the settings from the parent pages if it has not been done yet
if (!is_bool($objPage->protected)) {
$objPage->loadDetails();
}
// Set the admin e-mail address
if ($objPage->adminEmail != '') {
list($GLOBALS['TL_ADMIN_NAME'], $GLOBALS['TL_ADMIN_EMAIL']) = String::splitFriendlyEmail($objPage->adminEmail);
} else {
list($GLOBALS['TL_ADMIN_NAME'], $GLOBALS['TL_ADMIN_EMAIL']) = String::splitFriendlyEmail(Config::get('adminEmail'));
}
// Exit if the root page has not been published (see #2425)
// Do not try to load the 404 page, it can cause an infinite loop!
if (!BE_USER_LOGGED_IN && !$objPage->rootIsPublic) {
header('HTTP/1.1 404 Not Found');
die_nicely('be_no_page', 'Page not found');
}
// Check wether the language matches the root page language
if (Config::get('addLanguageToUrl') && Input::get('language') != $objPage->rootLanguage) {
$this->User->authenticate();
$objHandler = new $GLOBALS['TL_PTY']['error_404']();
$objHandler->generate($pageId);
}
// Check whether there are domain name restrictions
if ($objPage->domain != '') {
// Load an error 404 page object
if ($objPage->domain != Environment::get('host')) {
$this->User->authenticate();
$objHandler = new $GLOBALS['TL_PTY']['error_404']();
//.........这里部分代码省略.........
示例10: loadDetails
//.........这里部分代码省略.........
$pid = $objParentPage->pid;
$type = $objParentPage->type;
// Parent title
if ($ptitle == '') {
$palias = $objParentPage->alias;
$pname = $objParentPage->title;
$ptitle = $objParentPage->pageTitle ?: $objParentPage->title;
}
// Page title
if ($type != 'root') {
$alias = $objParentPage->alias;
$name = $objParentPage->title;
$title = $objParentPage->pageTitle ?: $objParentPage->title;
$folderUrl = basename($alias) . '/' . $folderUrl;
$trail[] = $objParentPage->pid;
}
// Cache
if ($objParentPage->includeCache && $this->cache === false) {
$this->cache = $objParentPage->cache;
}
// Layout
if ($objParentPage->includeLayout) {
if ($this->layout === false) {
$this->layout = $objParentPage->layout;
}
if ($this->mobileLayout === false) {
$this->mobileLayout = $objParentPage->mobileLayout;
}
}
// Protection
if ($objParentPage->protected && $this->protected === false) {
$this->protected = true;
$this->groups = deserialize($objParentPage->groups);
}
}
}
// Set the titles
$this->mainAlias = $alias;
$this->mainTitle = $name;
$this->mainPageTitle = $title;
$this->parentAlias = $palias;
$this->parentTitle = $pname;
$this->parentPageTitle = $ptitle;
$this->folderUrl = $folderUrl;
}
// Set the root ID and title
if ($objParentPage !== null && $objParentPage->type == 'root') {
$this->rootId = $objParentPage->id;
$this->rootAlias = $objParentPage->alias;
$this->rootTitle = $objParentPage->title;
$this->rootPageTitle = $objParentPage->pageTitle ?: $objParentPage->title;
$this->domain = $objParentPage->dns;
$this->rootLanguage = $objParentPage->language;
$this->language = $objParentPage->language;
$this->staticFiles = $objParentPage->staticFiles;
$this->staticPlugins = $objParentPage->staticPlugins;
$this->dateFormat = $objParentPage->dateFormat;
$this->timeFormat = $objParentPage->timeFormat;
$this->datimFormat = $objParentPage->datimFormat;
$this->adminEmail = $objParentPage->adminEmail;
// Store whether the root page has been published
$time = \Date::floorToMinute();
$this->rootIsPublic = $objParentPage->published && ($objParentPage->start == '' || $objParentPage->start <= $time) && ($objParentPage->stop == '' || $objParentPage->stop > $time + 60);
$this->rootIsFallback = true;
$this->rootUseSSL = $objParentPage->useSSL;
$this->rootFallbackLanguage = $objParentPage->language;
// Store the fallback language (see #6874)
if (!$objParentPage->fallback) {
$this->rootIsFallback = false;
$this->rootFallbackLanguage = null;
$objFallback = static::findPublishedFallbackByHostname($objParentPage->dns);
if ($objFallback !== null) {
$this->rootFallbackLanguage = $objFallback->language;
}
}
} elseif (TL_MODE == 'FE' && $this->type != 'root') {
header('HTTP/1.1 404 Not Found');
\System::log('Page ID "' . $this->id . '" does not belong to a root page', __METHOD__, TL_ERROR);
die_nicely('be_no_root', 'No root page found');
}
$this->trail = array_reverse($trail);
// Do not cache protected pages
if ($this->protected) {
$this->cache = 0;
}
// Use the global date format if none is set (see #6104)
if ($this->dateFormat == '') {
$this->dateFormat = \Config::get('dateFormat');
}
if ($this->timeFormat == '') {
$this->timeFormat = \Config::get('timeFormat');
}
if ($this->datimFormat == '') {
$this->datimFormat = \Config::get('datimFormat');
}
// Prevent saving (see #6506 and #7199)
$this->preventSaving();
$this->blnDetailsLoaded = true;
return $this;
}
示例11: mb_regex_encoding
if (USE_MBSTRING && function_exists('mb_regex_encoding')) {
mb_regex_encoding(Config::get('characterSet'));
}
/**
* HOOK: add custom logic (see #5665)
*/
if (isset($GLOBALS['TL_HOOKS']['initializeSystem']) && is_array($GLOBALS['TL_HOOKS']['initializeSystem'])) {
foreach ($GLOBALS['TL_HOOKS']['initializeSystem'] as $callback) {
System::importStatic($callback[0])->{$callback[1]}();
}
}
/**
* Include the custom initialization file
*/
if (file_exists(TL_ROOT . '/system/config/initconfig.php')) {
include TL_ROOT . '/system/config/initconfig.php';
}
/**
* Check the request token upon POST requests
*/
if ($_POST && !RequestToken::validate(Input::post('REQUEST_TOKEN'))) {
// Force a JavaScript redirect upon Ajax requests (IE requires absolute link)
if (Environment::get('isAjaxRequest')) {
header('HTTP/1.1 204 No Content');
header('X-Ajax-Location: ' . Environment::get('base') . 'contao/');
} else {
header('HTTP/1.1 400 Bad Request');
die_nicely('be_referer', 'Invalid request token. Please <a href="javascript:window.location.href=window.location.href">go back</a> and try again.');
}
exit;
}
示例12: getRootPageFromUrl
/**
* Try to find a root page based on language and URL
*
* @return \PageModel
*/
public static function getRootPageFromUrl()
{
// HOOK: add custom logic
if (isset($GLOBALS['TL_HOOKS']['getRootPageFromUrl']) && is_array($GLOBALS['TL_HOOKS']['getRootPageFromUrl'])) {
foreach ($GLOBALS['TL_HOOKS']['getRootPageFromUrl'] as $callback) {
/** @var \PageModel $objRootPage */
if (is_object($objRootPage = static::importStatic($callback[0])->{$callback[1]}())) {
return $objRootPage;
}
}
}
$host = \Environment::get('host');
// The language is set in the URL
if (\Config::get('addLanguageToUrl') && !empty($_GET['language'])) {
$objRootPage = \PageModel::findFirstPublishedRootByHostAndLanguage($host, \Input::get('language'));
// No matching root page found
if ($objRootPage === null) {
header('HTTP/1.1 404 Not Found');
\System::log('No root page found (host "' . $host . '", language "' . \Input::get('language') . '")', __METHOD__, TL_ERROR);
die_nicely('be_no_root', 'No root page found');
}
} else {
$accept_language = \Environment::get('httpAcceptLanguage');
// Find the matching root pages (thanks to Andreas Schempp)
$objRootPage = \PageModel::findFirstPublishedRootByHostAndLanguage($host, $accept_language);
// No matching root page found
if ($objRootPage === null) {
header('HTTP/1.1 404 Not Found');
\System::log('No root page found (host "' . \Environment::get('host') . '", languages "' . implode(', ', \Environment::get('httpAcceptLanguage')) . '")', __METHOD__, TL_ERROR);
die_nicely('be_no_root', 'No root page found');
}
// Redirect to the language root (e.g. en/)
if (\Config::get('addLanguageToUrl') && !\Config::get('doNotRedirectEmpty') && \Environment::get('request') == '') {
static::redirect((!\Config::get('rewriteURL') ? 'index.php/' : '') . $objRootPage->language . '/', 301);
}
}
return $objRootPage;
}
示例13: die_nicely
die_nicely(_("Sorry, the filename must end in '.csv'."));
}
$csvfile = fopen($uploadfile, "r");
if (!$csvfile) {
die_nicely(_("Unable to open CSV file."));
}
// Convert whole file into giant array
// (stupid workaround for PHP 5.2 because str_getcsv() is not standard yet)
$rows = array();
while (($data = fgetcsv($csvfile, 1000, ",")) !== FALSE) {
$rows[] = $data;
}
fclose($csvfile);
break;
default:
die_nicely(_("Unknown file type {$fileType}"));
}
if ($action == _("Upload")) {
print "<table style='border-spacing: 3'><tr>";
print "<th>ID</th><th colspan=2>" . _("Date") . "</th><th>" . _("Flight") . "</th><th>" . _("From") . "</th><th>" . _("To") . "</th><th>" . _("Miles") . "</th><th>" . _("Time") . "</th><th>" . _("Plane") . "</th><th>" . _("Reg") . "</th>";
print "<th>" . _("Seat") . "</th><th>" . _("Class") . "</th><th>" . _("Type") . "</th><th>" . _("Reason") . "</th><th>" . _("Trip") . "</th><th>" . _("Comment") . "</th></tr>";
}
$count = 0;
foreach ($rows as $row) {
switch ($fileType) {
case "FM":
$row = pq($row);
$cols = $row['> td, th']->elements;
$id = pq($cols[0])->text();
// Read and validate date field
// <td class="liste_rot"><nobr>10-05-2009</nobr><br>06:10<br>17:35 -1</td>