当前位置: 首页>>代码示例>>PHP>>正文


PHP Sites::getByPName方法代码示例

本文整理汇总了PHP中Sites::getByPName方法的典型用法代码示例。如果您正苦于以下问题:PHP Sites::getByPName方法的具体用法?PHP Sites::getByPName怎么用?PHP Sites::getByPName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Sites的用法示例。


在下文中一共展示了Sites::getByPName方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: createSpecialURLfromShortURL

function createSpecialURLfromShortURL($shortURL)
{
    $siteMgr = new Sites();
    $webRoot = rtrim(ltrim((string) sConfig()->getVar("CONFIG/DIRECTORIES/WEBROOT"), '/'), '/');
    $shortURL = urldecode($shortURL);
    // Remove webroot prefix, if present
    if (strlen($webRoot) && strpos($shortURL, $webRoot) === 0) {
        $shortURL = substr($shortURL, strlen($webRoot . '/'));
    }
    if (strlen($webRoot) && strpos($shortURL, '/' . $webRoot) === 0) {
        $shortURL = substr($shortURL, strlen('/' . $webRoot . '/'));
    }
    $urlArray = explode('/', ltrim(rtrim($shortURL, '/'), '/'));
    $fileMgr = sFileMgr();
    switch (strtolower($urlArray[0])) {
        case 'image':
            $specialType = 'IMG';
        case 'download':
            if (!$specialType) {
                $specialType = 'DOWN';
            }
            // Check for file
            $fileID = $fileMgr->getFileIdByPname($urlArray[1]);
            if ($fileID) {
                $specialURL = '§§LINKTO:' . $specialType . ':' . $fileID . '§§';
                if (count($urlArray) > 2) {
                    array_shift($urlArray);
                    array_shift($urlArray);
                    $specialURL .= '/' . implode('/', $urlArray);
                }
                return $specialURL;
            }
            break;
        default:
            // Check for page
            $siteInfo = $siteMgr->getByPName($urlArray[0]);
            if ($siteInfo) {
                $pageMgr = new PageMgr($siteInfo['ID']);
                $lastElement = $urlArray[count($urlArray) - 1];
                if (substr($lastElement, 0, 1) == ':') {
                    $lastElement = $urlArray[count($urlArray) - 2];
                    $suffix = '/' . $urlArray[count($urlArray) - 1];
                }
                $pName = $lastElement;
                $pageID = $pageMgr->getPageIdByPname($pName);
                if ($pageID) {
                    $specialURL = '§§LINKTO:PAGE:' . $siteInfo['ID'] . ':' . $pageID . '§§' . $suffix;
                    return $specialURL;
                }
            }
            break;
    }
    return false;
}
开发者ID:nrueckmann,项目名称:yeager,代码行数:54,代码来源:common.php


注:本文中的Sites::getByPName方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。