gpt4 book ai didi

php - 解析错误在 PHP 中设置变量

转载 作者:可可西里 更新时间:2023-11-01 00:52:53 25 4
gpt4 key购买 nike

我有一个在我的代码中使用的配置类。此类中的一个变量是网站 URL。最近,我向我的服务器添加了 SSL,现在我需要对此进行检查并将“http”或“https”指定为协议(protocol)。

我试过的代码是:

<?php

class Test
{
public static $blah = (1 == 1) ? 'this' : 'or this';
}

echo Test::$blah;

?>

这会产生一个解析错误。

最佳答案

不幸的是,您不能使用表达式设置默认类变量。您只能使用原始类型和值。只有 array() 被识别。

您可以做的是创建一个“静态初始化器”函数,该函数只能调用一次并将设置您的变量...因此:

<?php

class Test
{
public static $blah;
private static $__initialized = false;

public static function __initStatic() {
if(self::$__initialized) return;

self::$blah = (1 == 1) ? 'this' : 'or this';

self::$__initialized = true;
}
}
Test::__initStatic();

然后只需从您的其他文件中获取您的变量:

<?php
echo Test::$blah;

如果您稍后在代码中编辑 Test::$blah,它不会因意外调用 Test::__initStatic() 而恢复。

关于php - 解析错误在 PHP 中设置变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3368760/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com