首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如果html包含连接的isset()三元表达式,我可以将html存储在变量中吗?

如果html包含连接的isset()三元表达式,我可以将html存储在变量中吗?
EN

Stack Overflow用户
提问于 2018-07-08 08:28:48
回答 1查看 43关注 0票数 -1

我甚至不知道如何清楚地问这个问题,所以我为任何混淆道歉。

基本上,我尝试将$img['socialfb']存储在hoverHTML中,因此如果html包含一个值,它将连接显示正确社交图标的<li>元素,如果不包含,它将继续移动。这最终将包括其他社交图标链接项目。

代码语言:javascript
复制
$hoverHTML = '<div class="thumbnail-overlay">
                <h2><a href="'.$img['link'].'"> '.$img['data']->post_title.'</a></h2>
                    <ul class="socials">'
                        (isset($img['socialfb']) ? .'<li><a href="'.$img['socialfb'].'"><i class="fab fa-facebook"></i></li>'. : .''.)                          
                   '</ul></div>';
return $hoverHTML;

这有可能吗?我仍然是php的新手,但正在尝试修改一个现有的插件。

下面是完整的函数:

代码语言:javascript
复制
function getHover( $img ){
        $hoverHTML = '';
        if(!$this->hover) return $hoverHTML;
        if($this->hover == 1){
            $hoverHTML .= $this->titleHover;
            if( $this->linkIcon || $this->zoomIcon ){
                $hoverHTML .= '<div class="rbsIcons">';
                if($this->linkIcon && $img['link']) $hoverHTML .= '<a href="@LINK@" '.($img['typelink']?'target="_blank"':'').' title="@TITLE@">'.$this->linkIcon.'</a>';
                if($this->zoomIcon) $hoverHTML .= $this->zoomIcon;
                $hoverHTML .= '</div>';
            }
            $hoverHTML .= $this->descHover;
        }

        if($this->templateHover) $hoverHTML = $this->templateHover; 

        if($hoverHTML){             
            $hoverHTML =  str_replace( 
                array('@TITLE@','@CAPTION@','@DESC@', '@LINK@', '@SOCIALFB@'), 
                array( 
                    $img['data']->post_title,
                    $img['data']->post_excerpt,
                    $img['data']->post_content,
                    $img['link'],
                    $img['socialfb'],
                ), 
                $hoverHTML
            );
        }
        $hoverHTML = '<div class="thumbnail-overlay">
                        <h2><a href="'.$img['link'].'"> '.$img['data']->post_title.'</a></h2>
                        <ul class="socials">'
                            (isset($img['socialfb']) ? .'<li><a href="'.$img['socialfb'].'"><i class="fab fa-facebook"></i></li>'. : .''.)                          
                        '</ul>

                      </div>';
        return $hoverHTML;
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-08 08:38:46

所以你可以这样做,但是你有语法错误,把$hoverHTML改成这样:

代码语言:javascript
复制
$hoverHTML = '<div class="thumbnail-overlay">
            <h2><a href="'.$img['link'].'"> '.$img['data']->post_title.'</a></h2>
                <ul class="socials">'
                    .(isset($img['socialfb']) ? '<li><a href="'.$img['socialfb'].'"><i class="fab fa-facebook"></i></li>' : '').                          
               '</ul></div>';
return $hoverHTML;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51227949

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档