提供CSS类来回应字符串

时间:2013-10-24 07:53:49

标签: php css echo

我有一个PHP文件,它包含许多用于各种检查的echo语句;

if ($power != "1")
{
    echo "Please contact administrator for assistance.";
    exit;
}

if (!$uid)
{
    echo "You do not have permissions to change your status.";
    exit;
}

if (!$mybb->input['custom'])
{
    echo "You've not added any status to change";
    exit;
}

我想为每个echo语句提供一个类似的CSS类。我试过了;

if ($power != "1")
{
    echo "<div class='class_name'>Please contact administrator for assistance.</div>";
    exit;
}

它有效,但我的php文件有几十个echo,我不想编辑每个echo语句。有没有简单的方法来实现这个目标?

5 个答案:

答案 0 :(得分:2)

您可以定义一个函数来处理输出消息。您必须更新现有代码,但将来,您将能够轻松更改CSS类名称或HTML结构。

class Response
{
    public static function output($message, $className = 'class_name')
    {
        echo "<div class='" . htmlspecialchars($className) . "'>" . $message. "</div>";
        exit;
    }
}

用法:

if ($power != "1")
{
    Response::output("Please contact administrator for assistance.");
}

覆盖班级名称:

Response::output("Please contact administrator for assistance.", "other_class");

答案 1 :(得分:1)

如果您在上述答案中遇到问题/错误,那么这是我的答案,我希望它有所帮助;

在PHP文件的<?php上方添加以下代码;

<style type="text/css">
    .error{
        background: #FFC6C6;
        color: #000;
        font-size: 13px;
        font-family: Tahoma;
        border: 1px solid #F58686;
        padding: 3px 5px;
    }
</style>

接下来将每个echo语句更改为类似的内容;

echo "<div class='error'>Write error code here.</div>";
exit;

如果您正在使用Notepad ++

,则可以轻松查找和替换echo语句

它应该工作。它也有点类似于MrCode的答案,但我认为我的答案很容易理解,并且可能很容易实现。

答案 2 :(得分:0)

没有办法,除非你定义一次css类并将所有的echo语句放在其中。

<div class = "name">
<?php

echo ...
...
...
?>

</div>

答案 3 :(得分:0)

尝试将每个echo更改为固定变量名称:

if ($power != "1")
{
    $msg = "Please contact administrator for assistance.";
}

if (!$uid)
{
    $msg = "You do not have permissions to change your status.";
}

if (!$mybb->input['custom'])
{
    $msg = "You've not added any status to change";
}

然后编写一个函数给出输出样式:

function stylizing($msg, $class="")
{
   if($class != "")
       $msg = "<div class='{$class}'>{$msg}</div>";
   echo $msg;
}

然后,您可以使用stylizing($msg, "class_name");打印出结果。

答案 4 :(得分:0)

你的意思是这样吗?

$message = '';

if ($power != "1") $message .= "<div class='one'>Please contact administrator for assistance.</div>";
elseif (!$uid) $message .= "<div class='two'>You do not have permissions to change your status.</div>";
elseif (!$mybb->input['custom']) $message .= "<div class='three'>You've not added any status to change.</div>";

echo $message;