TYPO3 - 带有自定义查询的调度任务
TYPO3 - Scheduler task with custom query
我正在使用 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']->exec_SELECTquery
而使用像 $GLOBALS['TYPO3_DB']->sql_query(' SELECT * FROM ... ')
这样的方法?
是的,这绝对有可能。
这是完整的函数:
/**
* 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 ... ')
我正在使用 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']->exec_SELECTquery
而使用像 $GLOBALS['TYPO3_DB']->sql_query(' SELECT * FROM ... ')
这样的方法?
是的,这绝对有可能。
这是完整的函数:
/**
* 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 ... ')