本文整理汇总了PHP中format::is_single_tag方法的典型用法代码示例。如果您正苦于以下问题:PHP format::is_single_tag方法的具体用法?PHP format::is_single_tag怎么用?PHP format::is_single_tag使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类format
的用法示例。
在下文中一共展示了format::is_single_tag方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: tag_reassemble
function tag_reassemble($a)
{
$node = $a[1];
// getting referer document path
$base = env('HTTP_REFERER');
preg_match("/^([a-z]*:\\/\\/[^\\/]*)\\/(.*?)(index.php|\$)/i", $base, $url);
$host = $url[1];
$docroot = '/' . ($url[3] ? dirname($url[2]) . '/' : $url[2]);
$attr = format::split_attributes(isset($a[2]) ? $a[2] : null);
// checking resources
$src_arr = array('src', 'href', 'action');
foreach ($src_arr as $src) {
if (isset($attr[$src])) {
if (substr($attr[$src], 0, 2) == '..') {
$path = explode('/', $docroot);
if (($del = strpos($attr[$src], '?')) !== false) {
$relative = substr($attr[$src], 0, $del);
}
$rel = explode('/', isset($relative) ? $relative : $attr[$src]);
for ($i = 0; $rel[$i] == '..'; $i++) {
array_pop($path);
}
$attr[$src] = (count($path) ? implode('/', $path) . '/' : '') . substr($attr[$src], $i * 3);
}
}
}
switch ($node) {
case 'img':
if (!isset($attr['alt'])) {
$attr['alt'] = htmlspecialchars(basename($attr['src']));
}
if (!isset($attr['width']) || !isset($attr['height'])) {
$attr['width'] = $attr['height'] = 0;
}
if (substr($attr['src'], 0, 7) != 'http://' || substr($attr['src'], 0, strlen($_SERVER['HTTP_HOST'])) == $_SERVER['HTTP_HOST']) {
$src = urldecode($attr['src']);
$local_src = TM_SOURCE_DIR . ltrim($src, '/');
if (file_exists($local_src)) {
$size = @getimagesize($local_src);
if (isset($size[0]) && isset($size[1])) {
$attr['width'] = $size[0];
$attr['height'] = $size[1];
}
}
}
// this line breaks the standards... but surely the user don't cares (she/he didn't provide a with nor a height attribute)
if (0 == $attr['width'] + $attr['height']) {
unset($attr['width'], $attr['height']);
}
break;
}
$attr = format::join_attributes($attr);
return '<' . $node . ($attr ? ' ' . $attr : '') . (format::is_single_tag($node) ? ' /' : '') . '>';
}