PhpStorm - 在课堂上找不到的方法'对于BLOB

时间:2016-06-09 08:08:39

标签: phpstorm

我在PhpStorm中有很多文件,其中有一个警告,我去了绿色标记!它们都来自于使用BLOB,这当然有意义,因为load()不是我项目中设置的功能。它是OCI-Lob的基本php函数。

代码行是:

$zip->addFromString($result['FILE_NAME'], $result['FILE_BLOB']->load());

我尝试在各种组合中添加@var@method comments(可能不正确),例如:

/** @var $result['FILE_BLOB'] load */

我当然不希望关闭这个检查项目,因为它在其他地方非常有用。我只是想为这条线压制它,或者甚至更好地将它指向正确的方向。有很多黄色块而不是蜱虫很烦人。也许我只是挑剔,因为该计划显然不受影响。有谁知道任何解决方案或解决方法?

1 个答案:

答案 0 :(得分:2)

您可以在单独的变量中引用blob,然后对该变量进行提示:

/** @var OCI_Lob $fileBlob */
$fileBlob = $result['FILE_BLOB'];
$zip->addFromString($result['FILE_NAME'], $fileBlob->load());

由于$ result ['FILE_BLOB']是一个对象,它将通过引用分配,因此这不会导致脚本内存使用量显着增加。

另一个选项是将整个结果数组提示为OCI_Lob对象的数组。不太好,但它也可能解决您的代码检查问题:

/** @var OCI_Lob[] $result */
$zip->addFromString($result['FILE_NAME'], $result['FILE_BLOB']->load());

据我所知,在PHPDoc评论中提示特定的数组键是不可能的,所以这是我现在能想到的最好的。