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
12 days of design thinking
Our 12 days of design thinking released for Xmas 2024. A whimsical way of explaining some of the ways we approach design and strategy. Remember – Design thinking is not just for Christmas. Ho Ho Ho.
Our inaugural FedEx Day
We here at Practically took 24 hours out of client work to do our first FedEx day – so called because you deliver something the next day. We wanted to show off the creativity, technical process and breadth of what our small team made.
What is a business web application?
This Whitepaper is jointly written by Job Bains of Obsolete.com and Sam Collett at Practically.io. See more about us at the end of this document.