我维护了一个15年的网站,最初是用庞大的PHP代码编写的。我最近嫁接在CakePHP中实现的后端,我将它放在主网站上的自己的文件夹中(所有网址看起来都像http://www.mysite.com/console/<cake stuff>
)。
这个后端工作正常,我在CakePHP部分有很多有用的功能 - 但是现在我希望能够从主站点访问这些功能,因为在vanilla PHP中重新实现它似乎是浪费。 / p>
当然有一个选项是Cake代码生成JSON结果,然后在PHP页面中我可以使用curl调用动作,伪代码:
$data = curl('http://mysite.com/console/accounts/data.json');
$accounts = json_decode($data);
但是在同一网站中使用curl页面似乎非常低效。 相反,我希望有一个类似于这样的类:
require('clever_stuff.php');
$cakeAccessor = new CakeAccessor(<settings>);
$accounts = $cakeAccessor->requestAction('orders','data');
我在网上搜索过,找不到任何东西。但在尝试实现我自己的类之前(我希望通过在命令行中调用用于调用Cake功能的shell脚本中的代码来实现这一点)我想知道是否有任何新的开源模块已经这样做了。
请注意:将所有页面从主站点移动到webroot目录是不可行的。
答案 0 :(得分:0)
可能是CakeResponse
类的子类,修改其send
方法以停止自动输出,然后使用修改版本的webroot/index.php
将Dispatch发送到您的自定义类,并从中检索Cake的输出它