在一行语句里调用一个类的多个方法,该怎么写?

txlty 2014-08-27 06:45:04
比如这句:
$this->m_button6PaneInfo->Movable( false )->Dock()->Fixed()->BottomDockable( false )->TopDockable( false )->Layer( 10 )->ToolbarPane();

$this->m_button6PaneInfo 是一个类实例。后面的全是该类的方法。
这条语句是无法通过的,至少我的php版本无法通过。

除了拆成多行外,这条该怎么改?才能正确执行?
或者升级到哪个版本?才可以这样写
...全文
203 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ohmygirl 2014-08-27
  • 打赏
  • 举报
回复
链式操作的前提,每次操作都返回对象本身。
xuzuning 2014-08-27
  • 打赏
  • 举报
回复
这样写
class testcls{
    function fun1(){
        echo 'fun1';
        return $this;
    }
    function fun2(){
        echo 'fun1';
        return $this;
    }
    function fun3(){
        echo 'fun3';
        return $this;
    }
}
$test = new testcls();
$test->fun1()->fun2()->fun3();
txlty 2014-08-27
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
只要那些方法返回的是 $this 那么就不会不能通过
用清晰的代码表述一下:
<?php
class testcls{
	function fun1(){
		echo 'fun1';
	}
	function fun2(){
		echo 'fun1';
	}
	function fun3(){
		echo 'fun3';
	}
}
$test = new testcls();
$test->fun1()->fun2()->fun3();
?>
$test->fun1()->fun2()->fun3(); 这样写不行。 那该怎么写?用一行语句调用3个方法。
xuzuning 2014-08-27
  • 打赏
  • 举报
回复
只要那些方法返回的是 $this 那么就不会不能通过
多无人机协同航迹规划的约束处理与进化优化一体化框架:从几何可修复性建模到多种群种群多样性维持策略(Matlab代码实现)内容概要:本文提出了一种针对多无人机协同航迹规划的约束处理与进化优化一体化框架,重点解决了复杂三维战场环境中多无人机协同飞行的路径规划问题。该框架创新性地结合了几何可修复性建模方法,以处理飞行过程中的各种硬性和软性约束,如障碍物规避、飞行高度限制、燃料消耗等,确保所规划航迹的安全性与可行性。同时,引入多种群种群多样性维持策略,有效增强了进化算法在全局搜索过程中的多样性和避免早熟收敛的能力,从而提高了优化效率与解的质量。整个框架通过Matlab代码实现了完整的仿真验证,展示了其在复杂场景下生成高效、安全、协同飞行路径的有效性与实用性。; 适合人群:具备一定编程基础和优化算法知识,从事无人机路径规划、智能优化算法研究或相关领域工作的研究生、科研人员及工程技术人员。; 使用场景及目标:① 解决复杂三维环境中多无人机协同路径规划问题,确保飞行安全与任务效率;② 提升进化算法在高维、多约束优化问题中的搜索能力和稳定性;③ 为相关领域的研究人员提供一套完整的Matlab代码实现方案,便于进一步研究与应用开发。; 阅读建议:此资源不仅提供了理论框架的设计思路,还配套了详细的Matlab代码实现,建议读者在学习过程中结合理论部分与代码实践,深入理解几何可修复性建模与多种群策略的具体实现方式,并尝试调整参数或应用场景以加深理解和促进创新。

21,889

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧