本文整理汇总了PHP中XenForo_Helper_String::prepareAutoLinkedUrl方法的典型用法代码示例。如果您正苦于以下问题:PHP XenForo_Helper_String::prepareAutoLinkedUrl方法的具体用法?PHP XenForo_Helper_String::prepareAutoLinkedUrl怎么用?PHP XenForo_Helper_String::prepareAutoLinkedUrl使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XenForo_Helper_String
的用法示例。
在下文中一共展示了XenForo_Helper_String::prepareAutoLinkedUrl方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: _autoLinkUrlCallback
/**
* Callback for the auto-linker regex.
*
* @param array $match
*
* @return string
*/
protected function _autoLinkUrlCallback(array $match)
{
$link = XenForo_Helper_String::prepareAutoLinkedUrl($match[0]);
if ($link['url'] === $link['linkText']) {
$tag = '[url]' . $link['url'] . '[/url]';
} else {
$tag = '[url="' . $link['url'] . '"]' . $link['linkText'] . '[/url]';
}
return $tag . $link['suffixText'];
}
示例2: _autoLinkUrl
/**
* Handles autolinking the given URL.
*
* @param string $url
*
* @return string
*/
protected function _autoLinkUrl($url)
{
$link = XenForo_Helper_String::prepareAutoLinkedUrl($url);
if ($this->_fixProxy && preg_match('/proxy\\.php\\?[a-z0-9_]+=(http[^&]+)&/i', $link['url'], $match)) {
// proxy link of some sort, adjust to the original one
$url = urldecode($match[1]);
if (preg_match('/./u', $url)) {
if ($link['url'] == $link['linkText']) {
$link['linkText'] = $url;
}
$link['url'] = $url;
}
}
if ($link['url'] === $link['linkText']) {
if ($this->_autoEmbed['embedType'] != XenForo_Helper_Media::AUTO_EMBED_MEDIA_DISABLED && $this->_autoEmbedRemaining > 0 && $this->_enableAutoEmbed && ($mediaTag = XenForo_Helper_Media::convertMediaLinkToEmbedHtml($link['url'], $this->_autoEmbed))) {
$tag = $mediaTag;
$this->_autoEmbedRemaining--;
} else {
$tag = '[url]' . $link['url'] . '[/url]';
}
} else {
$tag = '[url="' . $link['url'] . '"]' . $link['linkText'] . '[/url]';
}
return $tag . $link['suffixText'];
}
示例3: _autoLinkUrl
/**
* Handles autolinking the given URL.
*
* @param string $url
*
* @return string
*/
protected function _autoLinkUrl($url)
{
$link = XenForo_Helper_String::prepareAutoLinkedUrl($url);
if ($this->_fixProxy && preg_match('/proxy\\.php\\?[a-z0-9_]+=(http[^&]+)&/i', $link['url'], $match)) {
// proxy link of some sort, adjust to the original one
$url = urldecode($match[1]);
if (preg_match('/./u', $url)) {
if ($link['url'] == $link['linkText']) {
$link['linkText'] = $url;
}
$link['url'] = $url;
}
}
if ($link['url'] === $link['linkText']) {
if ($this->_autoEmbed['embedType'] != XenForo_Helper_Media::AUTO_EMBED_MEDIA_DISABLED && $this->_autoEmbedRemaining > 0 && $this->_enableAutoEmbed && ($mediaTag = XenForo_Helper_Media::convertMediaLinkToEmbedHtml($link['url'], $this->_autoEmbed))) {
$tag = $mediaTag;
$this->_autoEmbedRemaining--;
} else {
$urlToPageTitle = XenForo_Application::getOptions()->urlToPageTitle;
if (!empty($urlToPageTitle['enabled']) && microtime(true) - $this->_startTime < $this->_urlTitleTimeLimit && $link['url'] === XenForo_Helper_String::censorString($link['url'])) {
$title = $this->_getUrlTitle($link['url']);
if ($title) {
$format = $urlToPageTitle['format'];
if (!$format) {
$format = '{title}';
}
$tokens = array('{title}' => $title, '{url}' => $link['url']);
$linkTitle = strtr($format, $tokens);
$tag = '[URL="' . $link['url'] . '"]' . $linkTitle . '[/URL]';
} else {
$tag = '[URL]' . $link['url'] . '[/URL]';
}
if ($this->_streamFile) {
@unlink($this->_streamFile);
$this->_streamFile = null;
}
} else {
$tag = '[URL]' . $link['url'] . '[/URL]';
}
}
} else {
$tag = '[URL="' . $link['url'] . '"]' . $link['linkText'] . '[/URL]';
}
return $tag . $link['suffixText'];
}