脚本宝典收集整理的这篇文章主要介绍了hacklang – 常见的php函数在hack中,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
Unbound name: str_replace Unbound name: empty@H_304_2@做了一些研究我发现这是因为使用了’遗留’的PHP而不是类型检查,并且//严格会出错.
这很好,所有,empty()很容易替换,但str_replace()有点困难.
是否有一个与// strict一起使用的等效@L_777_5@?或至少类似的东西.
我知道我可以使用// decl,但我觉得这样就违背了我的目的.
是否至少有任何方法可以判断哪些函数在hack中实现,哪些不在文档中,因为我找不到?
作为参考(虽然它与问题本身不太相关),这里是代码:
<?hh //strict class HackMarkdown { public function parse(string $content) : string { if($content===null){ throw new RuntimeException('Empty Content'); } $PRepared = $this->prepare($content); } private function prepare(string $contentpre) : Vector<string>{ $contentpre = str_replace(array("\r\n","\r"),"\n",$contentpre); //probably need more in here $prepared = Vector::FromArray(explode($contentpre,"\n")); //and here return $prepared; } }
最简单的方法是下载this folder并将其放在项目中的某个位置.我把它放在我项目基础的hhi文件夹中.那里的文件告诉Hack所有内置的PHP函数.
他们中的大多数都没有类型提示,这可能导致Hack认为所有内容的返回类型都是混合而不是实际返回,这在大多数情况下实际上是正确的,例如,str_replace可以返回字符串或bool .但是,它确实会停止“未绑定名称”错误,这是添加它们的主要原因.
以上是脚本宝典为你收集整理的hacklang – 常见的php函数在hack中全部内容,希望文章能够帮你解决hacklang – 常见的php函数在hack中所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。