PHP 中的这个语法( page = $page ? $page : 'default' )是什么意思?

发布于 2024-08-18 07:22:50 字数 298 浏览 16 评论 0原文

我是 PHP 新手。我在 WordPress 中遇到了这种语法。该代码的最后一行是做什么的?

$page = $_SERVER['REQUEST_URI'];
$page = str_replace("/","",$page);
$page = str_replace(".php","",$page);
$page = $page ? $page : 'default'

I'm new to PHP. I came across this syntax in WordPress. What does the last line of that code do?

$page = $_SERVER['REQUEST_URI'];
$page = str_replace("/","",$page);
$page = str_replace(".php","",$page);
$page = $page ? $page : 'default'

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

心病无药医 2024-08-25 07:22:50

这是三元运算符

该行翻译为

if ($page)
    $page = $page;
else
    $page = 'default';

That's the ternary operator:

That line translates to

if ($page)
    $page = $page;
else
    $page = 'default';
若水微香 2024-08-25 07:22:50

这是 PHP 中条件运算符的示例。

这是以下内容的简写版本:

if (something is true ) {
    Do this
}
else {
    Do that
}

请参阅使用 If/Else 三元运算符
http://php.net/manual/en/language.operators.comparison。 php
.

It's an example of the conditional operator in PHP.

It's the shorthand version of:

if (something is true ) {
    Do this
}
else {
    Do that
}

See Using If/Else Ternary Operators
http://php.net/manual/en/language.operators.comparison.php
.

撕心裂肺的伤痛 2024-08-25 07:22:50

这是一个三元运算,不是 PHP 或 WordPress 特有的,它存在于大多数语言中。

(condition) ? true_case : false_case 

因此,在这种情况下,当 $page 类似于 false 时,$page 的值将是“默认”——否则它将保持不变。

It's a ternary operation which is not PHP or WordPress specific, it exists in most langauges.

(condition) ? true_case : false_case 

So in this case the value of $page will be "default", when $page is something similar to false — otherwise it will remain unchanged.

梦途 2024-08-25 07:22:50

这意味着如果 $page 没有值(或者为零),请将其设置为“默认”。

It means that if $page does not have a value (or it is zero), set it to 'default'.

囍孤女 2024-08-25 07:22:50

这意味着如果 $page 变量不为空,则在该变量的最后一行分配 $page 变量或将其设置为“默认”页面名称。

称为条件运算符

It means if the $page variable is not empty then assign the $page variable on the last line that variable or set it to 'default' page name.

It is called conditional operator

眼前雾蒙蒙 2024-08-25 07:22:50

最后一行更详细的语法是:

if ($page)
{
    $page = $page;
}
else
{
    $page = 'default';
}

More verbose syntax of the last line is:

if ($page)
{
    $page = $page;
}
else
{
    $page = 'default';
}
醉南桥 2024-08-25 07:22:50

这就是所谓的条件运算符< /a>.它的功能类似于 if-else 语句,
所以

$page = $page ? $page : 'default';

也一样

if($page)
{
    $page = $page;
}
else
{
    $page = 'default';
}

That's the so-called conditional operator. It functions like an if-else statement,
so

$page = $page ? $page : 'default';

does the same as

if($page)
{
    $page = $page;
}
else
{
    $page = 'default';
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文