Which PHP function is used to send a custom HTTP header?
Answers
set_header()
http_header()
header()
send_header()
# Understanding the PHP header() Function
The `header()` is a built-in PHP function designed to send a raw HTTP header to a client. The question in the quiz sought to identify the PHP function employed to deliver a custom HTTP header. Out of the provided answers, we can clearly see that `header()` is the correct choice.
Simple as it may seem, the `header()` function plays a critical role in PHP development since it allows manipulating incoming HTTP headers, redirecting URLs, and blocking page caching to maintain data freshness. However, ensure to declare the `header()` function before any actual output is sent, either by normal HTML tags, blank lines in a file, or from PHP.
## Practical Example
Here is an example of how to use the `header()` function:
```php
```
In this code snippet, the `header()` function sends an HTTP header that instructs the client's browser to navigate to a different URL, in this case, `http://www.example.com/`. The `exit;` statement is essential after redirection to halt script execution and avoid sending additional output.
## Best Practices and Insights
When using PHP's `header()` function, a couple of key practices can help optimize its utility:
- Remember to use the `header()` function before any output is sent to maintain its effectiveness. If the output is already sent, PHP will encounter an error, and changes to the HTTP header will not be applied.
- Always validate and sanitize your inputs. Especially when you use a custom HTTP header, unchecked data can lead to severe security issues like header injection attacks.
- Understand the particular HTTP headers you intend to use and their impact on your application.
PHP's `header()` function is a powerful tool when used effectively, providing increased control over HTTP headers and client-side behavior improvement. Understanding and applying the best practices above can lead to robust and efficient PHP web applications.