我应该如何继续这段代码

时间:2016-04-18 08:17:42

标签: php drupal drupal-8

我正在尝试从不属于Drupal或Drupal Module的外部PHP脚本中获取用户名变量。

对于Drupal 7,有drupal_bootstrap来加载所需的Drupal依赖项。然而,经过长时间的搜索后,我发现Drupal 8是一个注释,drupal_bootstrap因Drupal 8而被弃用。

事实上,我得到了一个

Call to undefined function drupal_bootstrap()

当我在

中包含后尝试调用它时
<?php
define('DRUPAL_ROOT', '/var/www/html/drupal7'); // Define the DRUPAL_ROOT constant which is used in many places.
$base_url = 'http://'.$_SERVER['HTTP_HOST'].'/drupal7'; // Again, this is used in many places.
require_once DRUPAL_ROOT . '/includes/bootstrap.inc'; // Include the boostrap file.
drupal_bootstrap(DRUPAL_BOOTSTRAP_SESSION); // Start things up to whatever level you need.

global $user;
echo $user->name;

那么如何从外部脚本中使用Drupal 8 API?!

在另一个论坛上发布这个,我得到了这个代码,但它不起作用,所以我想知道出了什么问题。我知道有些东西丢失了,但我不知道如何回显当前登录用户的名字:

<?php
define('DRUPAL_DIR', __DIR__ .'/../../drupal');

use Drupal\Core\DrupalKernel;
use Symfony\Component\HttpFoundation\Request;

$autoloader = require_once DRUPAL_DIR . '/autoload.php';
$request = Request::createFromGlobals();
$kernel = DrupalKernel::createFromRequest($request, $autoloader, 'prod');
$kernel->boot();

require_once DRUPAL_DIR . '/core/includes/database.inc';
require_once DRUPAL_DIR . '/core/includes/schema.inc';
?>

提前致谢

0 个答案:

没有答案