Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/255.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用自静态功能时出错_Php - Fatal编程技术网

Php 使用自静态功能时出错

Php 使用自静态功能时出错,php,Php,我有一个示例代码: class Assets { public static $my_static = ''; public static function custom_js() { return self::add_custom_js(); } public static function add_custom_js($str) { return self::$my_static = $str;

我有一个示例代码:

class Assets {
    public static $my_static = '';    

    public static function custom_js()
    {
        return self::add_custom_js();
    }

    public static function add_custom_js($str)
    {
        return self::$my_static = $str;
    }
}
和php

<?php
Assets::add_custom_js("ABC");
?>
<html>
 ...
 <?php echo Assets::custom_js(); ?>
 ...
</html>

...
...

错误无法显示数据字符串为“ABC”

我想您希望返回
$my_static
值以在
echo Assets::custom_js()中获取
ABC
。考虑如下:

class Assets {
    public static $my_static = '';    

    public static function custom_js()
    {
        // return self::add_custom_js();
        return self::$my_static; //This is what you want i believe
    }

    public static function add_custom_js($str)
    {
        return self::$my_static = $str;
    }
}

您必须从
custom\u js()
返回
$my\u static
,因此您的类应如下所示:

<?php
class Assets {
    public static $my_static = '';    

    public static function custom_js()
    {
        return self::$my_static; //<-------------change this line
    }

    public static function add_custom_js($str="")
    {
        return self::$my_static = $str;
    }
}
?>

在custom_js()中调用add_custom_js()时没有传递参数