データベースクエリを実行するには、どのファイルを含める必要がありますか?

Aug 22 2020

Joomlaデータベースクエリを練習しようとしています。学習目的で、Joomlaのルートフォルダーの下にある空のPHPファイルで知りたいのですが、どのファイルを含める必要がありますか?

$db = JFactory::getDbo(); $query = $db->getQuery(true);

回答

2 Lodder Aug 22 2020 at 21:33

次のように、PHPファイルの先頭にJoomlaフレームワークをロードする必要があります。

<?php

define('_JEXEC', 1);
define('JPATH_BASE', './'); // Assumes the PHP file is in the Joomla's root directory
require_once JPATH_BASE . 'includes/defines.php';
require_once JPATH_BASE . 'includes/framework.php';

次に、データベースクエリを記述して、たとえば、#__usersテーブルからすべてのデータをロードできます。

<?php

define('_JEXEC', 1);
define('JPATH_BASE', './');
require_once JPATH_BASE . 'includes/defines.php';
require_once JPATH_BASE . 'includes/framework.php';

use Joomla\CMS\Factory;

$db = Factory::getDbo(); $db->setQuery(
    $db->getQuery(true) ->select('*') ->from($db->qn('#__users'))
);
$users = $db->loadObjectList();

var_dump($users);