Phalanger找不到我的php课程

时间:2012-10-15 18:14:57

标签: c# php phalanger

this question之后,我找到了一个关于here的好(最新)示例。我成功地让PHP.Core库在VS中工作但仍然在查找我的php类时遇到问题。

但教程很简单

dynamic phpObj = globals.@class.PhpClass();

从未找到我的php类。我已尝试使用示例文件default.php(classname:PhpClass)和我自己的php类,它们类似但名称不同。

我在这里缺少什么?我试过了选项

  

项目属性>打包/发布网络>要部署的项目>所有文件   项目

但这并没有帮助。目前我在项目下面有我的php课程,如下所示 enter image description here

我得到的错误只是说找不到课程: enter image description here

这里使用ILSpy是CurrentContext的主要代码片段

result = (((ScriptContext)CallContext.GetData("PhpNet:ScriptContext")) ?? ScriptContext.CreateDefaultScriptContext());

这是用于查找php类(AFAIK)的代码行。

1 个答案:

答案 0 :(得分:1)

您必须先将PHP文件包含在PHP上下文中... 在Web App中,要正确“模拟”php生命周期,请执行以下操作:

using (var request_context = RequestContext.Initialize(ApplicationContext.Default, HttpContext.Current))
{
    var context = request_context.ScriptContext;
    context.Include("default.php", false);
// now the declarations declared by default.php are available in context.
// do anything with PHP objects here
}