如何在TYPO3 extbase扩展控制器中打开文件?

如何在TYPO3 extbase扩展控制器中打开文件?,typo3,extbase,typo3-extensions,Typo3,Extbase,Typo3 Extensions,我需要读取扩展控制器内部的一个文件,例如,我的扩展密钥是myext_key,我要打开的文件是Resources/Private/JSON目录中的JSON文件data.JSON。我的研究告诉我,打开文件的最好方法不是使用文件获取内容($path),而是使用\TYPO3\CMS\Core\Utility\generaluvity::getURL($path) 所以我用下面的代码进行了尝试,但没有成功: $content = \TYPO3\CMS\Core\Utility\GeneralUtility

我需要读取扩展控制器内部的一个文件,例如,我的扩展密钥是
myext_key
,我要打开的文件是
Resources/Private/JSON
目录中的JSON文件
data.JSON
。我的研究告诉我,打开文件的最好方法不是使用
文件获取内容($path)
,而是使用
\TYPO3\CMS\Core\Utility\generaluvity::getURL($path)

所以我用下面的代码进行了尝试,但没有成功:

$content = \TYPO3\CMS\Core\Utility\GeneralUtility::getURL('EXT:myext_key/Resources/Private/JSON/data.json');

谢谢你的帮助

不确定
file\u get\u contents()
是否存在内存问题,因为
file\u get\u contents()
本质上是为整个文件内容分配一个变量。只要你处理的是一个小的.json文件,你就应该在保险箱里

获取扩展目录中文件的绝对文件名的方法是
getFileAbsFileName()

$fileContent = file_get_contents(
    \TYPO3\CMS\Core\Utility\GeneralUtility::getFileAbsFileName('EXT:myext_key/Resources/Private/JSON/data.json')
);