Al observar las funciones enumeradas en la página de manejo de HTTP para Drupal 7 , noté que las siguientes funciones ya no existen en Drupal 8. (Los enlaces son para las páginas de documentación de Drupal 7, donde los enlaces a la documentación de Drupal 8 para esos faltan funciones).
- drupal_access_denied ()
- drupal_get_query_array ()
- drupal_goto ()
- drupal_http_request ()
- drupal_not_found ()
- drupal_site_offline ()
¿Qué funciones / métodos debería usar en su lugar en Drupal 8?
Respuestas:
Estas son las funciones / métodos / clases que deben usarse en el código Drupal 8.6.x.
drupal_access_denied()
ha sido reemplazado de la clase AccessDeniedHttpException . Las devoluciones de llamada de página que necesitan devolver el error de acceso denegado deben usar un código similar al siguiente.En lugar de
drupal_get_query_array()
existeparse_query()
(una función en elGuzzleHttp\Psr7
espacio de nombres), que es parte de Guzzle.drupal_goto()
ha sido reemplazado de laRedirectResponse
clase. Las devoluciones de llamada de página que necesitan redirigir a los usuarios deben usar un código similar al siguiente. (Tenga en cuenta que los controladores de envío de formularios no deben usar esta clase).drupal_http_request()
ha sido reemplazado de un servicio Drupal 8 que implementa la interfaz ClientInterface . El código Drupal 8 debe ser similar al siguiente.drupal_not_found()
ha sido reemplazado de la clase NotFoundHttpException . Las devoluciones de llamada de página deben usar un código similar al siguiente.drupal_site_offline()
debe ser reemplazado por un suscriptor de eventos, similar al siguiente.drupal_encode_path()
ha sido reemplazado porUrlHelper::encodePath()
drupal_get_query_parameters()
ha sido reemplazado porUrlHelper::filterQueryParameters()
drupal_http_build_query()
ha sido reemplazado porUrlHelper::buildQuery()
, que se eliminará una vez que el núcleo de Drupal requiera al menos PHP 5.4 (en ese momento, será posible usarlo directamentehttp_build_query()
).drupal_parse_url()
ha sido reemplazado porUrlHelper::parse()
Tenga en cuenta que, en comparación con versiones anteriores de Drupal, hay algunos cambios importantes. Por ejemplo, algunos métodos que estaban en la
Url
clase se han movido en laUrlHelper
clase; algunas de las clases de Guzzle ya no se usan.fuente