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
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.
[diagram] Level up Cache in WordPress – a Practical Guide
Speed with websites is largely about caching of resources. We explain what, why and how we do things at Practically.