TYPO3 - 具有自定义查询的计划程序任务

时间:2018-06-18 12:34:26

标签: typo3 extbase typo3-6.2.x

我正在使用TYPO3 6.2。 我创建了一个自定义的Extbase Task,以便每天自动执行它。

<?php

namespace Myextension\Scheduler;

use TYPO3\CMS\Core\Utility\GeneralUtility;

class Task extends \TYPO3\CMS\Scheduler\Task\AbstractTask {


    public function execute()
    {

        // Custom MySQL query here

    }

}

?>

我需要开发一个包含很多条件,数据和连接的复杂mysql查询:是否可以不使用$GLOBALS['TYPO3_DB']->exec_SELECTquery,而是使用像$GLOBALS['TYPO3_DB']->sql_query(' SELECT * FROM ... ')这样的方法?

1 个答案:

答案 0 :(得分:1)

是的,这绝对有可能。

这是完整的功能:

/**
 * Executes query
 * MySQLi query() wrapper function
 * Beware: Use of this method should be avoided as it is experimentally supported by DBAL. You should consider
 * using exec_SELECTquery() and similar methods instead.
 *
 * @param string $query Query to execute
 * @return boolean|\mysqli_result|object MySQLi result object / DBAL object
 */
public function sql_query($query) {
    $res = $this->query($query);
    if ($this->debugOutput) {
        $this->debug('sql_query', $query);
    }
    return $res;
}

你在文件中找到它:

typo3/sysext/core/Classes/Database/DatabaseConnection.php

你可以像你写的那样叫它:

$GLOBALS['TYPO3_DB']->sql_query(' SELECT * FROM ... ')