Phalanger找不到我的php课程
在这个问题之后,我发现了一个很好的(最新的)示例。 我成功地让PHP.Core库在VS中工作,但仍然在查找我的php类时遇到问题。
然而,该教程很简单
dynamic phpObj = globals.@class.PhpClass();
从来没有找到我的PHP课程。 我尝试过使用示例文件default.php(classname:PhpClass)和我自己的php类,它们类似,但名称不同。
我在这里想念的是什么? 我试过了这个选项
项目属性>打包/发布Web>要部署的项目>项目中的所有文件
但那并没有帮助。 目前我在项目下面有我的php课程,如下所示
我得到的错误只是说它找不到类:
在这里使用ILSpy是CurrentContext的主要代码片段
result = (((ScriptContext)CallContext.GetData("PhpNet:ScriptContext")) ?? ScriptContext.CreateDefaultScriptContext());
这是用于查找php类(AFAIK)的代码行。
您必须先将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 }