问题标签 [zephir]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
168 浏览

curl - Zephir curl 依赖

如何正确引入 curl 扩展作为依赖项?

只需尝试创建一个引用curl 扩展中的常量的数组,就像这样

导致编译时警告/错误

警告:在 89 的 /home/nathan/gitRepos/zephir/rcurl/rcurl/curl.zep 中编译时不存在常量 'CURLOPT_CONNECTTIMEOUT' [不存在-常量]

Zephir\CompilerException:无效值类型:第 89 行 /home/nathan/gitRepos/zephir/rcurl/rcurl/curl.zep 中的字符串

我开始查看生成的config.json文件并找到requires我添加的部分,curl所以它现在看起来像这样

但是现在编译器错误已经改变

Zephir\Exception:无法加载扩展:curl,在构建此扩展之前,您必须在上面添加扩展

0 投票
1 回答
3514 浏览

php - PHP 无法加载动态扩展(无效的 ELF 标头)[PHP + Zephir]

这里有点问题。我已经在我的机器上编译了示例 Zephir 插件,它在工作站上运行良好,但是当我移动它时。到生产服务器,我收到这个奇怪的 php 错误:

PHP 启动:无法加载动态库 '/mod/utils.so' - /mod/utils.so:第 0 行的 Unknown 中的 ELF 标头无效

路径很好,因为当 dir php 中不存在该文件时,会引发 file not found 错误。

谷歌什么也没告诉我。好像从来没有人遇到过这种问题。有任何想法吗?

0 投票
0 回答
103 浏览

php-extension - 为什么我在 zephir php 扩展开发中遇到此错误?

PHP 警告:PHP 启动:无法加载动态库 '/usr/lib64/php/modules/myapp.so' - /usr/lib64/php/modules/myapp.so:未定义符号:第 0 行未知中的 zend_error_noreturn

我的代码(myapp.zep)是

当我删除参数时代码有效

当我用字符串 abc 设置方法测试的参数时,我得到了错误。但我在windows版本中编译它工作正常..

我的服务器配置是

我现在完全堆叠了。这个编译的 .so 文件,我在另一个相同的配置服务器中使用过,它工作正常。

0 投票
1 回答
317 浏览

windows - 错误 zephir_parser 扩展未加载窗口

我已按照此处的所有步骤在 Windows 7 32 位上安装 zephir 我使用 wampserver 2.5 运行 php,我已下载 PHP5.6.33 并将其成功添加到 wampserver

我已经安装了 Visual Studio 2012

我已经创建了一个扩展名称空间:

zephir 初始化 myapp

我创建了这个类用于测试目的

但是当我从命名空间目录调用 build

zephir 构建

我有这个错误

知道我已将 php_zephir_parser.dll 添加到 php 扩展中,并且我在 phpinfo 中有 Zephir Parser

0 投票
1 回答
326 浏览

ampps - 如何分发已编译的扩展?

周末我刚刚开始尝试使用 Zephir,并设法在 mac 终端上编译并运行了一个 hello world 扩展。我已经安装了 AMPPS,并且正在尝试在 AMPPS 上安装这个扩展。不确定我的步骤是否正确,但如果我将 .so 文件复制过来,我会从 AMPPS 收到此错误:

警告:PHP 启动:无法加载动态库 '/Applications/AMPPS/php-7.1/lib/extensions/ext/utils.so' - dlopen(/Applications/AMPPS/php-7.1/lib/extensions/ext/utils.所以,9):没有找到合适的图像。确实找到了:/Applications/AMPPS/php-7.1/lib/extensions/ext/utils.so: mach-o,但架构错误/Applications/AMPPS/php-7.1/lib/extensions/ext/utils.so: stat( ) 在 07.1.2 行的 Unknown 中以 errno=3 失败

将来在托管服务器上安装已编译扩展的正确方法是什么?

0 投票
0 回答
40 浏览

php - 是否有可能在 Zephir 中禁止扩展类的外部实例化?

我还没有安装或修改 Zephir。

因为在此之前,我想知道是否可以在 Zephir 扩展中定义 PHP 类,该扩展只能由扩展本身实例化,而不能在用户空间中实例化。

可能是朋友或受保护/私有类,或者可能是在扩展名称空间之外定义的类,或类似的东西。不过,最好不是匿名类。


我本可以发誓一些原生 PHP 扩展也具有类似的类(无法在用户空间中实例化),但碰巧我现在找不到任何示例。也许我只是想象过这一点。

0 投票
1 回答
66 浏览

zephir - Zephir中的var和let有什么区别

我阅读了 Zephir 的文档(https://docs.zephir-lang.com/0.12/en/types),但我不确定我是否理解 Zephir 之间varlet区别。我的第一个想法是,可能var只声明一个变量,如果你想将它分配给某个东西,你必须使用let. 但是后来我在文档中看到了以下几行:

我现在很困惑。

0 投票
1 回答
451 浏览

bluetooth - nrf52832 在控制器和 nrf52 之间创建连接时发生 Zephyr h5 hci uart 堆叠错误

我们正在尝试在 nrf52832 上设置 Zephyr 以运行 HCI 接口。由于硬件限制,我们必须不使用流控制,因此 H:5 HCI(三线 UART)和 bluez 5.54 我们在 DTS 覆盖中禁用了流控制。我们尝试使用 west build -t menuconfig标准 hci uart zephyr 示例来激活 H5。但这不起作用,因为它在控制器端而不是我们需要的客户端女巫。

我们在网上找到了当前的 HCI UART 示例和@carlesc 给我们的提示。您可以在此处找到源代码:代码。我已经使用 Bluez 3wire 支持编译了我的 linux 内核,并使用hciattach /dev/ttyUSB0 3wire 1000000 noflow nosleep. Linux 识别适配器并附加它,但随后系统崩溃并显示以下日志:

我试图 arm-none-eabi-addr2line -e zephyr/build/zephyr/zephyr.elf 0x16bd0确定错误发生的位置。我收到了这个回复 zephyrproject/zephyr/kernel/queue.c:280

我尝试更改CONFIG_BT_HCI_TX_STACK_SIZE大小,CONFIG_MAIN_STACK_SIZE以及CONFIG_ASSERT=ynrf52sdk_nrf52832.conf 中的 但这并没有改变。

建立连接时似乎会发生错误。建立连接后,zephyr 代码在net_buf_get函数上崩溃。

0 投票
0 回答
61 浏览

zephir - Zephir 函数返回的值只能赋值给变体变量

所以,我想通过 Zephir 制作一个可以加密和编码源代码的 PHP 扩展,但我有一个错误:

错误信息:

这是代码:

Cryptix.zep

我应该怎么做才能解决这个错误?非常感谢你的帮助。