在哪里为这个php片段添加自动换行?

时间:2013-07-13 06:51:02

标签: php word-wrap multilinestring

if ($cboxes = $dbi->query($vbox_result, 0)) {
foreach ($cboxes as $video) {
        $title = stripslashes ($video["title"]); 
        $wordWrappedTitle = wordwrap($title, 25, "\n");
        $full_title = stripslashes(str_replace("\"", "",$video["title"])); 
        $url =  $site_url.'video/'.$video["id"].'/'.seo_clean_url($full_title) .'/';


echo '
<div id="video-'.$video["id"].'" class="video">
<div class="thumb"> 
    <a class="clip-link" data-id="'.$video["id"].'" title="'.$full_title.'"  href="'.$url.'">
        <span class="clip">
            <img src="'.$video["thumb"].'" alt="'.$full_title.'" /> <span class="vertical-align"></span>
        </span>

        <span class="overlay"></span>
    </a>
     <span class="timer">'.sec2hms($video["duration"]).'</span>
    </div>  

这是更新后的代码。那会有用吗?

我的[标题]太长了。我真的需要知道在哪里添加自动换行。我想我确实需要更多练习。我想尝试一下。

1 个答案:

答案 0 :(得分:0)

您只需要练习程序编写和语法结构。我假设你想要wordwrap $ title,所以我现在只显示它,你写的是什么......

$title = stripslashes ($video["title"],.wordwrap , 25, '<br />',    true); 

现在因为stripslashes接受一个参数,所以放入多个参数比它要求的更多是没有意义的;这是一个巨大的指标,这是导致错误消息的原因。只需遵循你上面已经做过的模式......

stripslashes($box_title)

另外,请记住在php中'。'指示符表示连接,因此当您在某些关键字前面添加它时,它意味着“附加到字符串”。所以......

$title = stripslashes ($video["title"],.wordwrap , 25, '<br />',    true); 
                                       ^

没有意义,因为它之前的东西只是一个逗号,而不是一个字符串...所以它不能附加到任何东西。

你想要做的是wordwrap $ title,它被剥离了吗?一步一步,最好的代码方式......

第一步,剥离傻逼......

$title = stripslashes($video["title"]);

请注意,我刚刚插入了一个参数,它只需要先删除它。

第二步,用正确的论据来包装它。 Wordwrap有很多版本,但最简单的是(text,maxwidth,separator),其中separator通常是\ n或\ n

$wordWrappedTitle = wordwrap($title, 25, "\n");

我觉得你的代码的另一部分使用$ title变量为视频上的$ title,但现在你的自动换行结果在$ wordWrappedTitle变量中,如果你得到一个错误或者没有得到什么你期望尝试使用这个概念来弄清楚如何修复它(只需更换一些变量名称就可以了。)

编辑:

你为什么要......

<h2 class="title"><a href="'.$url.'"  title="'.$full_title.'">'.$title.'</a></h2>
                                                                 ^^^^

当您想使用$ wordWrappedTitle作为现在自动换行的标题时。在这里你仍然使用$ title,但它只是被剥离了。 $ wordWrappedTitle是自动换行的。所以我建议在那里使用它而不是$ title