如何在方法内部声明属性? - php

我是几天前开始的用PHP编写类的新手。

我想在要在其他方法中使用的方法中声明一个新的“公共属性”。

这就是我的想法(当然不起作用!):

    class hello {

        public function b() {
            public $c = 20; //I'd like to make $c usable by the method output() 
        }

        public function output() {
            echo $c;
        }
    }

$new = new hello;
$new->output();

在此先感谢您提供任何提示。

参考方案

我想在要在其他方法中使用的方法中声明一个新的“公共属性”。

如果其他方法属于同一类,则您不需要公共属性,那么私有属性将满足您的需求。私有属性只能在同一类中访问,这有助于使事情保持简单。

还了解声明属性和为其分配值之间的区别。加载代码时进行声明,执行代码时进行分配。因此,声明(或定义)属性(私有或公共)需要在PHP语法中有一个特殊的位置,即在类的主体中,而不在函数的内部。

您可以使用PHP中的特殊变量$this访问类内部的属性。

从对象上下文中调用方法时,伪变量$this可用。 $this是对调用对象(通常是方法所属的对象)的引用。 From PHP Manual

私有财产示例:

class hello {
    private $c; # properties defined like this have the value NULL by default

    public function b() {
        $this->c = 20; # assign the value 20 to private property $c
    }

    public function output() {
        echo $this->c; # access private property $c
    }
}

$new = new hello;
$new->output(); # NULL
$new->b();
$new->output(); # 20

希望这会有所帮助。您使用私有属性是因为程序中的其他所有内容都无需关心,因此在您的类内部您知道没有其他东西可以操纵该值。另请参见Visibility­Docs

PHP-将日期插入日期时间字段 - php

我已在数据库中使用datetime字段存储日期,使用PHP将“今天的日期”插入该字段的正确方法是什么?干杯, 参考方案 我认为您可以使用php date()函数

php ziparchive类源代码 - php

Improve this question 我如何获取ziparchive类本身的源代码。 参考方案 假设您在谈论PHP ZipArchive class:下载PHP source code并查找适当的文件。如果您希望源代码是PHP代码,您可能会感到失望,因为源代码是用C语言编写的。或者,也可以在PHP Github Development Reposito…

PHP getallheaders替代 - php

我正在尝试从服务器上的apache切换到nginx。唯一的问题是我在PHP脚本中使用的getallheaders()函数,该函数不适用于Nginx。我已经尝试过用户在getallheaders函数上的php站点上提供的注释,但这并不返回所有请求标头。请告诉我如何解决这个问题。我真的想切换到Nginx。 参考方案 您仍然可以使用它,但是您必须像这里一样重新定义…

PHP-如何建议搜索字词,“你是说……?” - php

当使用不检索任何结果的术语搜索数据库时,我想允许“您是不是……”建议(例如Google)。例如,如果有人寻找“ jquyer””,它将输出“ did you mean jquery?”当然,建议结果必须与数据库内部的值匹配(我正在使用mysql)。您知道可以做到这一点的图书馆吗?我已经用谷歌搜索过,但是没有找到任何好的结果。或者,也许您有一个想法,该如何独自…

php:将分钟取整到最近的四分之一小时,然后执行更多操作 - php

最初的问题是这样的:取分钟数->转换为四分之一小时-> 1个四分之一小时为1个单位->输出单位我今天整天都在整理页面,几分钟前我的大脑就停止工作了,我只是不知道如何输出单位数量。我知道在此网站上发布问题会有所帮助。因此,用户输入的分钟数(不是小时和分钟,而是数分钟),站点需要输出单位数量。单位是一个刻钟。分钟总是四舍五入到最近的四分之一小时…