Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typo3 类型3 fal_安全下载槽_Typo3_Signals Slots - Fatal编程技术网

Typo3 类型3 fal_安全下载槽

Typo3 类型3 fal_安全下载槽,typo3,signals-slots,Typo3,Signals Slots,我正在使用fal_securedownload 1.1.0和TYPO3 7.6.12,我想在文件转储之前通过插槽记录下载 在我的扩展中,我有一个ext\u localconf.php内容: <?php /** @var \TYPO3\CMS\Extbase\SignalSlot\Dispatcher $signalSlotDispatcher */ $signalSlotDispatcher = \TYPO3\CMS\Core\Utility\GeneralUtility::makeIn

我正在使用fal_securedownload 1.1.0和TYPO3 7.6.12,我想在文件转储之前通过插槽记录下载

在我的扩展中,我有一个
ext\u localconf.php
内容:

<?php
/** @var \TYPO3\CMS\Extbase\SignalSlot\Dispatcher $signalSlotDispatcher */

$signalSlotDispatcher = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Extbase\\SignalSlot\\Dispatcher');


$signalSlotDispatcher->connect(
        'BeechIt\\FalSecuredownload\\Hooks\\FileDumpHook',
        'BeforeFileDump',
        'MyVendor\\MyExtension\\Slot\\LogFileDump',
        'logFileDump'
);

?>
<?php
namespace MyVendor\MyExtension\Slot;

/**
 * Class LogFileDump
 * @package MyVendor\MyExtension\Slot
 */

class LogFileDump {
    public function logFileDump($file,$this) {
        var_dump($file);
        var_dump($this);
    }
}
?>

在Classes/Slot中,我有一个LogFileDump.php,内容如下:

<?php
/** @var \TYPO3\CMS\Extbase\SignalSlot\Dispatcher $signalSlotDispatcher */

$signalSlotDispatcher = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Extbase\\SignalSlot\\Dispatcher');


$signalSlotDispatcher->connect(
        'BeechIt\\FalSecuredownload\\Hooks\\FileDumpHook',
        'BeforeFileDump',
        'MyVendor\\MyExtension\\Slot\\LogFileDump',
        'logFileDump'
);

?>
<?php
namespace MyVendor\MyExtension\Slot;

/**
 * Class LogFileDump
 * @package MyVendor\MyExtension\Slot
 */

class LogFileDump {
    public function logFileDump($file,$this) {
        var_dump($file);
        var_dump($this);
    }
}
?>

当我测试这个时,我得到了错误:

给定的类“MyVendor\MyExtension\Slot\CallUrl”不是 注册对象

为什么我认为TYPO3会因为名称空间而自动加载我的类


有人知道我的代码出了什么问题吗?

我的解决方案是将composer.json放入扩展目录。这将正确加载类

您是否尝试清除typo3temp目录和所有其他缓存,并重新检查您的命名约定?是的,我尝试过。我的解决方案是将composer.json放入扩展目录。这将正确加载类。@BeP.Ier您可能希望创建一个自我回答,以便它不会在注释中丢失。