Php 如何通过TYPO3命令控制器写入文件
我想通过TYPO3命令控制器创建文件并写入日志文件。我使用过命令控制器,它在Php 如何通过TYPO3命令控制器写入文件,php,linux,typo3,extbase,typo3-7.6.x,Php,Linux,Typo3,Extbase,Typo3 7.6.x,我想通过TYPO3命令控制器创建文件并写入日志文件。我使用过命令控制器,它在ext_localconf中注册为$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['extbase']['commandControllers'][]=VENDOR\ExtName\command\generadorchivosencuestascommandcontroller::class;此命令控制器的目标是在我的扩展域的xlsx中创建所有模板,但在创建文件或写入日志文件的过程中
ext_localconf
中注册为$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['extbase']['commandControllers'][]=VENDOR\ExtName\command\generadorchivosencuestascommandcontroller::class代码>;此命令控制器的目标是在我的扩展域的xlsx中创建所有模板,但在创建文件或写入日志文件的过程中,我遇到了下一个错误:无法打开流:权限被拒绝。
否则,目录拥有775个权限,所有者为apache组;而用户:\u cli\u lowlevel
和\u cli\u scheduler
,这些用户在中具有相同的文件装载,可以引用typo3temp
我使用TyPo3 7.6、PHP 5.6、Apache 2.2.15
,您必须考虑到如果您从不使用CLI上的Web服务器用户,文件权限就不会起作用。因此,要么将filerights调整为0777,要么作为www-data登录cli。使用777(我认为这对于可能的安全问题不是一个好主意)会引发相同的错误执行任务“Extbase CommandController task(Extbase)”失败,并显示以下消息:PHP警告:fopen(newfile.txt):无法打开流:在/path/site/typo3conf/ext/my_extension/Classes/Command/GeneradorArchivosEncuestasCommandController.php第32行中被拒绝权限
如您的评论所示,我认为您应该为您的fopen添加路径。否则,请向我们显示您要打开文件的代码。