【问题标题】:TYPO3 - Scheduler task with custom queryTYPO3 - 带有自定义查询的计划任务
【发布时间】:2018-06-18 12:34:25
【问题描述】:

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

<?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']-&gt;exec_SELECTquery 而是使用像 $GLOBALS['TYPO3_DB']-&gt;sql_query(' SELECT * FROM ... ') 这样的方法?

【问题讨论】:

标签: typo3 extbase typo3-6.2.x


【解决方案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 ... ') 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-19
    • 1970-01-01
    • 2021-04-19
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    相关资源
    最近更新 更多