gpt4 book ai didi

php - 在自定义模块中获取 URL 参数

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:51:25 25 4
gpt4 key购买 nike

我创建了一个这样的自定义 block :

class HelloBlock extends BlockBase implements BlockPluginInterface{

/**
* {@inheritdoc}
*/
public function build() {
$config = $this->getConfiguration();
$result = db_query('SELECT * FROM {test}');
return array(
'#theme' => 'world',
'#test' => $result
);
}
}

现在我想以编程方式从 URL 中获取一些参数。

例如:

如果 URL 是 http://localhost/drup/hello/5569 我想在我的模块中获取值 5569

我已经尝试了 arg(1)drupal_get_query_parameters() 但我收到了以下错误消息:

Call to undefined function `Drupal\hello\Plugin\Block\arg()`

Call to undefined function `Drupal\hello\Plugin\Block\drupal_get_query_parameters()`

如何获取参数?

最佳答案

使用\Drupal\Core\Routing;:

$parameters = \Drupal::routeMatch()->getParameters();

命名参数可用作

$value = \Drupal::routeMatch()->getParameter('slug_name_from_route');

“slug_name_from_router”来自您的 routing.yml 路径属性

路径:'/你的/路径/{slug_name_from_route}'

如果你想要没有任何upcasting的原始参数你可以得到

$value = \Drupal::routeMatch()->getRawParameter('slug_name_from_route');

关于php - 在自定义模块中获取 URL 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37675445/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com