方法链PHP OOP - php

通常,在许多框架中,您可以找到使用查询生成器创建查询的示例。通常您会看到:

$query->select('field');
$query->from('entity');

但是,在某些框架中,您也可以像这样

$object->select('field')
       ->from('table')   
       ->where( new Object_Evaluate('x') )
       ->limit(1) 
       ->order('x', 'ASC');

您实际上是如何进行这种连锁的?

参考方案

这称为Fluent Interface-该页面上有一个example in PHP。

基本思想是该类的每个方法(您希望能够链接)必须返回$this,这使得可以在返回的$this上调用同一类的其他方法。

而且,当然,每个方法都可以访问该类的当前实例的属性-这意味着每个方法都可以向当前实例“添加一些信息”。

将一个PHP对象发送到另一个PHP页面 - php

我想知道是否有一种方法可以将PHP对象发送到另一台计算机上的另一个PHP页面?例如-我实现了一个构造Trie的类。现在,在构造Trie之后,我想将对象发送到另一个PHP页面,以便它也可以访问该对象。可行的选择是将其包装到某种编码的JSON请求中,然后将其发送到可以使用jQuery将其中继到所需页面的页面吗?对不起,我对此绝对陌生!将感谢提供的任何帮助。干杯!…

子类可以继承父类的构造函数吗,还是每个类都必须有自己的构造函数? - php

可以说我有一个抽象的ParentClass和ChildClass。 ChildClass扩展ParentClass。现在ParentClass有了这个不错的构造函数:function __construct($tplFile) { $this->$tplFile = $tplFile; } ChildClass会自动继承吗?而且,如果我不向ChildC…

加载CodeIgniter库的替代方法,以便它们与自动完成功能一起正常运行 - php

在CodeIgniter中,可以像下面这样加载库和模型:$my_library = new my_library(); 之所以要这样做,是因为使用$this->load时,我使用的编辑器(Komodo Edit)无法识别用于自动完成的类。 参考方案 在某些情况下,可以像这样加载类,但是除非绝对必要,否则您应该坚持使用CodeIgniter加载器类。我敦…

php-casperjs获取内部文本 - php

我正在为casperjs使用php包装器-https://github.com/alwex/php-casperjs我正在网上自动化一些重复的工作,我需要访问一个项目的innerText,但是我尚不清楚如何从casperjs浏览器访问dom。我认为在js中我会var arr = document.querySelector('label.input…

PHP getallheaders替代 - php

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