用大写名称发布用户名

时间:2019-06-18 23:32:40

标签: php authentication

我正在创建一个显示用户名的简单聊天应用程序。目前,它输出的是steve而不是Steve

为此行;

$text = "{$_SERVER['PHP_AUTH_USER']} <strong>|</strong> {$timestamp} <br> {$message} <br><br> \n";

我已经尝试过了

$text = "ucfirst({$_SERVER['PHP_AUTH_USER']}) <strong>|</strong> {$timestamp} <br> {$message} <br><br> \n";

和;

$text = "ucwords9{$_SERVER['PHP_AUTH_USER']}0 <strong>|</strong> {$timestamp} <br> {$message} <br><br> \n";

但无济于事。我只希望服务器用户名显示为大写。

要与之相呼应,

<p>Welcome, <?php echo ucwords ("{$_SERVER['PHP_AUTH_USER']}."); ?>

您会得到Welcome, Steve

任何有关如何使用大写首字母发布用户名的想法将不胜感激。预先感谢。

2 个答案:

答案 0 :(得分:2)

您不能在这样的字符串中使用函数。 PHP最多只会将其解释为字符串的一部分,并且可能会解释为语法错误。您可以先在ucfirst中使用名称$text

$user = ucfirst($_SERVER['PHP_AUTH_USER']);
$text = "{$user} <strong>|</strong> {$timestamp} <br> {$message} <br><br> \n";

您可以考虑将模板用于此类操作。它们可以缓解像这样“手动”构造HTML的一些更乏味且容易出错的方面。

答案 1 :(得分:1)

尝试:

$text = ucfirst($_SERVER['PHP_AUTH_USER']) . "<strong>|</strong> {$timestamp} <br> {$message} <br><br> \n";