Ich arbeite auf einer Drupal 8 Seite. In einer Seite habe ich einen PHP-Block, der ein Formular mit GET-Methode enthält.PHP vollständige URL wiederherstellen drupal 8
In der Seite, die Informationen erhalten habe ich eine URL, die wie site/page?param1=value1¶m2=value2
aussieht. Ich brauche value2.
Ich habe versucht, so viele Lösungen, aber ich finde nicht die Lösung:
$_GET['id'];
// returns : null
\Drupal::service('path.current')->getPath();
// returns : '/node/4'
$_SERVER['PHP_SELF'];
// returns : 'site/page'
$_SERVER['REQUEST_URI'];
// returns : 'site/page'
$_SERVER['argv'];
// returns : null
$_SERVER['HTTP_REFERER'];
// returns : 'http://site/node/4/edit'
\Drupal::request()->query->all();
// returns : array (size=0) empty
$path = \Drupal::request()->getpathInfo();
// returns : '/page'
\Drupal::request()->getRequestUri();
// returns : 'site/page'
\Drupal::request()->attributes->get('_system_path');
// returns : null
\Drupal::service('path.alias_manager')->getAliasByPath($current_path);
// returns : '/page'
$_SERVER['QUERY_STRING'];
// returns : ''
\Drupal::destination()->getAsArray();
// returns : 'site/page'
Kann mir jemand helfen, diese Wert2, die in der URL zu finden ist?
Wenn ich das versuche, habe ich eine "Null". Ich denke, das Problem ist von der Form und ich werde versuchen, darauf zu schauen. Vielen Dank. – Elehyan
Was ist die echte URL? Könnten Sie bitte auch hier Ihren Formularcode hinzufügen? Und die Routing-Datei (routing.yml), die Ihr Formular unterstützt. –
Sie könnten auch versuchen, 'CurrentRequest' anstelle von' MasterRequest' zu verwenden. Z.B. '$ request = $ requestStack-> getCurrentRequest();' Wenn es funktioniert, sind Sie in einer SubRequest, checken Sie den Link, den ich Ihnen über Anfragen gab. –