使用参数调用类中的函数


Call a function in a class with an argument

当函数/方法调用在类中时,我在发送参数时遇到问题。

我这样做:

echo class_name::function_name('string_arg');

成功到达CCD_ 2类内的函数CCD_。但是参数string_arg是一个字符串,在函数运行时不会被提取。这就像这个函数没有接收到参数或者只是没有读取它

有关信息:此调用是从同一类中的另一个函数内部进行的

我是不是用这个::类调用方法做错了什么?我可以到达函数,这很令人困惑,但不管参数如何,我仍然只得到函数的默认行为。

我很少看到有人将类::function_name()用于非静态方法。你使用它有什么原因吗?

你试过这个吗?

<?php echo $this->function_name($str); ?>

这将取决于函数是否使用副作用。如果这个函数只是返回一个值,那么就没有问题,因为它不需要与类本身交互。我认为问题可能是你试图将其作为工作对象之外的类方法进行调用。当你将类部分添加到调用的前面,即这个位class_name::时,你实际上并没有调用与当前对象中的类相同的类,因此它不会影响或使用该对象中的字段。如果您只调用function_name('string'),那么它将使用您调用它的对象的字段。