问题标签 [hacklang]
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.
php - 推送被拒绝,无法编译 PHP (HHVM) 应用程序
我需要在 Heroku 上使用 HHVM 和 Hacklang 开发一个 Web 应用程序。问题是当我git push
到 Heroku master 时,我收到了这个错误信息:
Composer设置有问题吗?
hhvm - HHVM 类未定义的 SleepWaitHandle
我正在尝试在 larval 应用程序中使用 HHVM 的异步函数。我在函数中添加了 async 关键字,但在等待 SleepWaitHandle 时出现错误。它说这个类是未定义的。文档似乎没有对此进行更改。我错过了什么?
我在每晚 3.9 和 3.8 的马厩上发生了这种情况。运行 ubuntu 14.10。
我尝试从http://hhvm.com/blog/7091/async-cooperative-multitasking-for-hack运行一个演示
但是在命令行上运行它会返回
hhvm - 获取 XHPChild 的孩子
当然,我正在尝试将我的网站移至 Hack 和 XHP。下面是我想要实现的代码结构的结构:
(注意: :ui:backstageHeader-navItem
基本上渲染到<a href={$this->:href}>{$this->getCHildren}</a>
所以这里不需要附加它的类。)
下面是代码:ui:backstageHeader
:
我使用终端来调试我的代码hhvm -m d <file.php>
,一切都很好;但是,当我访问我的浏览器时,我得到了500
错误标题。这就是日志所说的:
错误来自
但是,不知何故,我需要ul.main-navigation
从div.cell-navigation
我的section.backstage-header
.
我该怎么做?
hacklang - 不同对象的 HackLang 类型
假设我有允许代理不同适配器实例的静态连接器:
连接器必须在运行时初始化和处理连接:
适配器内部的某处:
连接是一个对象,可以是 Memcached、MySQLi 等的实例,也可以是 NULL。所以从逻辑上讲,我想这样做:
但同时连接并不是真正的“对象”实例,例如是 Memcached 的实例,结果是:
可捕获的致命错误:黑客类型错误:无效分配
在这种情况下,唯一可行的解决方案是根本不定义类型。定义通用对象是否有一些技巧?
hacklang - 更改 AsyncMysqlClient 的排序规则
如何将AsyncMysqlClient
(或AsyncMysqlConnection
,我不确定其中哪一个)的排序规则更改为utf8
?
我阅读了文档,但找不到任何更改字符集的方法。我可能会想念它,如果它真的在那里。
travis-ci - Travis CI 是否支持 Hack?
我已经完全用 Hack 编写了代码,我想使用 Travis CI 在启用 Hack 的各种 HHVM 版本上测试我的构建。当我选择 HHVM 作为测试平台时,Travis CI 是否支持 Hack 还是只是 PHP?
php - 带有正则表达式的 XHP 用于链接替换
我正在尝试实现一个简单的函数,该函数给定文本输入,返回在xhp_a
检测到链接时修改的文本,在一个段落xhp_p
中。
考虑这个类
这里的问题是xhp
转义html
和链接未按预期显示。我想这是因为 a 没有按预期创建 dom 层次结构(appendChild
例如使用方法),因此所有regex
替换都是一个字符串。
所以我解决这个问题的另一种方法是使用preg_match_callback
一个回调函数,该函数将创建xhp_a
并添加到下面的层次结构中,xhp_p
但这也不起作用。
我在某个地方错了吗?如果不存在任何安全风险/更大的开销,只需在客户端而不是服务器上查找和替换加载 html 吗?
谢谢你的时间 !
php - PHP:发送选项列表作为参数(替代命名参数/参数包)
我希望提供一个选项列表作为函数的参数。
理想场景:命名参数
如果 PHP 有命名参数,它会这样做:
不幸的是 PHP 没有命名参数(请告诉我 PHP7 是否计划有一些作为注释)。
其他人都在使用的解决方案:关联数组
我见过的大多数 PHP 脚本都使用另一种数组方法,如下所示:
关联数组方法的缺点
虽然这很好用,但也有以下缺点:
- 用户不会从自动完成中受益(需要很长时间才能编写)
- 用户很容易出现拼写错误
- 不知道有哪些选项可用,因此可能会经常返回文档
有没有更好的办法?
有没有更好的方法可以解决这些问题(在当前的 PHP 或 PHP7 中,甚至可能是 hacklang(?))。
ubuntu - 如何使用 Atom/Nuclide 和 Hack 进行内联错误检查?
Nuclide 据说支持错误检查,但我不知道如何设置它。
- 我有全新安装的 Atom
- 我通过安装核素
apm install nuclide-installer
hh_client
我已经通过在命令行上从我的项目目录运行验证了 Hack 已正确安装,它确实报告了错误- 我的项目根目录中有一个
.hhconfig
,但它是空的(不知道在里面放什么) - 守望者已安装
IDE 中未显示任何错误(请参见屏幕截图)。我还有其他事情要做吗?
nginx - hhvm hack lang error 500 而不是报错
我在 nginx dockered 服务上玩过 hack。一切都很好,而不是引发错误。例如这个函数:
这应该会产生错误,因为它不是整数。但是,我得到了一个 500 页,而不是返回错误消息。
键入hhvm index.hh
控制台给了我:
Catchable fatal error: Argument 1 passed to add_one() must be an instance of int, string given in /var/www/index.hh on line 7
如何避免出现 500 页并打印此错误消息?