繁体   English   中英

从常规PHP文件访问Haxe / PHP变量

[英]Access Haxe / PHP variables from regular PHP file

我已经使用Haxe构建了一个Web服务,并且针对PHP。 输出数据的主要方式是通过汇总查询结果的图像。

但是,我需要将一些变量集成到常规PHP文件中,并通过php生成的文件和用户编码的php文件之间的某种通信来使它们可访问。

我曾考虑过在Haxe / PHP文件中声明一个函数,该函数返回一个包含我想要的所有数据的关联数组,但是我对Haxe环境的了解不足,无法实现它并从php文件访问它。 我不确定应该在php端包含什么。

我的问题是:

  • 我的方法有意义吗? 如果是这样,实现它的最佳方法是什么?
  • 如果没有,您会提出什么建议?

任何线索都欢迎! 谢谢。

我不再使用PHP目标了,但是我认为Haxe中的所有内容都暴露于PHP,因此您应该能够导入所需的类。

导入Haxe环境

看一下生成的index.php

<?php

if(version_compare(PHP_VERSION, '5.1.0', '<')) {
    exit('Your current PHP version is: ' . PHP_VERSION . '. Haxe/PHP generates code for version 5.1.0 or later');
}
;
require_once dirname(__FILE__).'/php/php/Boot.class.php';

server_Server::main();

?>

最后一行“ server_Server :: main()”可以替换为您要执行的任何函数调用或操作。 默认情况下,它将执行您指定为“ -main”的任何类的“ main”方法,在我的情况下为“ server.Server.main()”

静态函数调用:

说我有一个带有公共静态函数的类。 在Haxe中,我会称呼:

  var testPassword = ufront.auth.model.User.generatePasswordHash("test", "test");

在PHP中,等效代码如下所示:

  $testPassword = ufront_auth_model_User::generatePasswordHash("test", "test");

对象创建:

如果您有一个要创建的对象:

  var u = new ufront.auth.model.User();

在PHP中将是:

  $u = new ufront_auth_model_User();

一般思想

返回关联数组或类似的简单PHP数据结构中的类型可能是一个好主意,以使其尽可能易于阅读,而不必担心将Haxe概念/数据结构转换为PHP。

如有疑问,请查看PHP代码-该代码易读,并且自Haxe 3起更是如此。(如果启用了-debug ,则函数中会获得很多额外的代码来帮助进行堆栈跟踪等操作,如果您将其关闭可能更容易阅读)。

如果您想弄清楚什么PHP语法需要做的事,您应该知道如何在Haxe中进行操作,然后用Haxe编写它,然后查看生成的PHP代码。 复制/粘贴/修改您的内心内容。

祝好运 ;)

您可能需要桥接的基本数据结构之间存在一些差异,可以使用php.Lib完成-如有必要。

除了Haxe和PHP之间的区别之外,您还应该考虑Haxe生成的类仅具有公共成员。 除此之外,它们在PHP中完全可用。

如果您先进行外部声明,也可以从Haxe实例化PHP类。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM