我终于掌握了php中的大多数语法,但是像这样的例子我似乎并不了解它的含义:

   if ( $matches->match_is_editable( $ts ) )


这就是我的理解:

"$matches"是一个变量

"->"表示该对象是同一对象的一部分,但混淆了其与下一部分的关系

"match_is_editable"是一个函数

"($ts)"是一个称为在该函数内部工作的变量

你能纠正我错了吗?将不胜感激

最佳答案

$matches->match_is_editable( $ts )


->访问对象的方法(当函数属于对象时我们称为函数)或属性。这意味着两件事:


$matches是对象的句柄。在代码前面的某个地方,您会找到$matches = new ClassName()(如果ClassName是对象的类的名称)
match_is_editable必须是ClassName中的方法或属性


在这种情况下,由于它采用参数$ts,因此我们可以推断出它不是属性,而是方法。该类可能如下所示:

Class ClassName{
    public function match_is_editable($arg){
        ...
    }
}


因此,第一行的意思是:访问$matches引用的对象并执行其match_is_editable方法,并向其传递参数$ts

关于php - 这个语法在php中是什么意思:if($ matches-> match_is_editable($ ts)),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38470507/

10-12 16:44