我有一种方法,可以在单击按钮时动态创建可下载的CSV:
header( \'Content-type: text/csv\' );
header( \'Cache-Control: no-store, no-cache\' );
header( \'Content-Disposition: attachment; filename="email_list.csv"\' );
$outstream = fopen( \'php://output\', \'w\' );
fputcsv( $outstream, $csv->header );
foreach ( $csv->rows as $row ) {
fputcsv( $outstream, $row );
}
fclose( $outstream );
exit();
当我通过PHP代码嗅探器运行类文件时,我得到以下警告:
63 | WARNING | File operations should use WP_Filesystem methods instead of
| | direct PHP filesystem calls. Found: fopen()
71 | WARNING | File operations should use WP_Filesystem methods instead of
| | direct PHP filesystem calls. Found: fclose()
据我所知
WP_Filesystem
在处理服务器上的文件时需要。我想知道,在动态创建可下载文件时,是否有必要像上面的示例一样。如果是,为什么?
最合适的回答,由SO网友:Mark Kaplun 整理而成
不
请记住,代码嗅探器是一个有限的实用程序,它对PHP代码进行非常简单的解析,并且几乎没有上下文知识。因此,您应该将其作为一种建议,一种指导您重新考虑代码部分的工具,而不是作为有关代码质量的“真实来源”。
一旦你确定你的代码是好的,用嗅探器提供的方法之一“屏蔽”错误的产生,这样它就不会一直困扰你并隐藏其他问题。