A good example of this is matching parameters in URLs. You can give the variables in your URL a name making your code a bit more readable. In the URL
1 | /category/1/post/5 |
we want to get the category id and the post id. A simple match would be to simply match the digits.
1 | ^\\/category\\/(\\d+)\\/post\\/(\\d+)$ |
This would then give you code something like:
1
2
3
4
5
6 $input_line = '/category/1/post/5'
preg_match('/^\\/category\\/(\\d+)\\/post\\/(\\d+)$/', $input_line, $output_array);
if ($output_array[1] === 1 && $output_array[2] === 5) {
// Do some magic
}
We can give our matches a name by adding a
1 | ?<name> |
to your pattern. So your new pattern will look like:
1 ^\\/category\\/(?<category_id>\\d+)\\/post\\/(?<post_id>\\d+)$
Now we can refactor our code to make it that bit more readable:
1
2
3
4
5
6 $input_line = '/category/1/post/5'
preg_match('^\\/category\\/(?<category_id>\\d+)\\/post\\/(?<post_id>\\d+)$', $input_line, $output_array);
if ($output_array['category_id'] === 1 && $output_array['post_id'] === 5) {
// Do some magic
}
Links to php live regex
More reads
Service Broker Introduction
A service broker is a way of provisioning services and binding them to applications. With a service broker you can provision a database and bind it to a deployment.
Mkcert all the things
After Ade Attwood’s recent dive into TLS and creating server certificates with a root ca. This is a much simpler way with mkcert…
Future Web Design Skills
This post is a version of a recent lecture. The question is “What skills and knowledge might future designers be expected to know”.