gpt4 book ai didi

php - 使用 PHP 在静态方法中访问 Class 属性的最佳方法

转载 作者:IT王子 更新时间:2023-10-29 00:21:21 27 4
gpt4 key购买 nike

这是我的类属性

private $my_paths = array(
'imagemagick' => 'E:\Server\_ImageOptimize\ImageMagick',
'pngcrush' => 'E:\Server\_ImageOptimize\pngCrush\pngcrush.exe',
'jpegtran' => 'E:\Server\_ImageOptimize\jpegtran\jpegtran.exe',
'gifsicle' => 'E:\Server\_ImageOptimize\gifsicle\gifsicle.exe',
'pngquant' => 'E:\Server\_ImageOptimize\pngquant\pngquant.exe',
'pngout' => 'E:\Server\_ImageOptimize\pngout\pngout.exe'
);

同一个类中有一个静态方法...

public static function is_image($file_path)
{

$imagemagick = $this->my_paths['imagemagick']. '\identify';

echo $imagemagick;
}

当然这给了我这样的错误

Fatal error: Using $this when not in object context...

然后我尝试像这样访问属性 self::my_paths['imagemagick'] 但这没有帮助。

我该如何处理?

最佳答案

您需要在变量/属性名称前加上 $ 符号,因此它变成:

self::$my_paths['imagemagick']

my_paths 没有声明为静态的。所以你需要它是

private static $my_paths = array(...);

当它前面没有static关键字时,它期望在一个对象中被实例化。

关于php - 使用 PHP 在静态方法中访问 Class 属性的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8785627/

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