PHP修剪内容之间的多个空格

时间:2014-07-28 07:12:06

标签: php

内容是根据php条件动态生成的。

具有多个空格的示例内容(查看源)

<title>Samsung   Phones Under Rs.20000 </title>

标题如何产生:

$conditional_title = <?php echo $brand; ?><?php echo $os; ?> Phones <?php echo ($prRange !='') ? 'under Rs.'$price' : ''; ?>

<title><?php echo $conditional_title; ?></title>

因此,如果$ os条件失败,内容将生成多个空格,如何在内容之间修剪这些多个空格。

预期产出:

<title>Samsung Phones Under Rs.20000 </title>

4 个答案:

答案 0 :(得分:4)

$conditional_title= preg_replace( '/\s+/', ' ', $conditional_title);

应该做的就是把所有多余的空白修剪成一个空格

答案 1 :(得分:0)

您可以使用功能修剪()。 http://php.net/manual/ru/function.trim.php

<?php
$brand = trim($brand);
$os = trim($os);

$addition = '';
if($prRange != '')
    $addition = 'under Rs.'.$price;

$conditional_title = $brand.' '.$os.' '.Phones.' '.$addition;
?>

<title><?php echo $conditional_title; ?></title>

答案 2 :(得分:0)

您可以检查变量是否为空:

$conditional_title = (!empty($brand)?$brand:"").(!empty($os)?$os:"")." Phones ".($prRange !='' ? 'under Rs.'$price' : '');

$conditional_title= preg_replace( '/[ ]+/', ' ', $conditional_title);//removing extra space if there is still any.?>

<title><?php echo $conditional_title; ?></title>

我无法理解为什么要在

中多次打开和关闭<?php ?>
$conditional_title = <?php echo $brand; ?><?php echo $os; ?> Phones <?php echo ($prRange !='') ? 'under Rs.'$price' : ''; ?>

答案 3 :(得分:0)

试试这个:

$conditional_title = <?php echo (isset($brand))?$brand:''; ?><?php echo (isset($os))?$os:''; ?> Phones <?php echo ($prRange !='') ? 'under Rs.'$price' : ''; ?>

<title><?php echo $conditional_title; ?></title>