შემზღუდველების ეკრანირება PHP-ში
თუ სიმბოლო არ არის სპეციალური, მაშინ, როცა მას იყენებთ როგორც შემზღუდველს, მას დასაჭირია ეკრანირება თავად რეგულარულ გამოსახულებაში. შევხედოთ მაგალითს.
დავუშვათ, რომ შემზღუდველების როლს ასრულებს შარდები, ხოლო რეგულარულ გამოსახულებაში ჩვენ ვეძებთ ამპერსანტის სიმბოლოს. ვინაიდან ამპერსანდი არ არის სპეცსიმბოლო, მას არ ვეკრანირებთ:
<?php
echo preg_replace('#a&b#', '!', 'a&b'); // გამოიტანს '!'
?>
დავუშვათ ახლა, რომ შემზღუდველები არიან ამპერსანდები და რეგულარულ გამოსახულებაში ასევე გვჭირდება ამპერსანდი. ასეთ შემთხვევაში, ამპერსანდის ეკრანირება მოგვიწევს, წინააღმდეგ შემთხვევაში ეს გამოიწვევს PHP-ის შეცდომას:
<?php
echo preg_replace('&a\&b&', '!', 'a&b'); // გამოიტანს '!'
?>
გამასწორეთ შეცდომა, რომელიც დაშვებულია შემდეგ კოდში:
<?php
echo preg_replace('#a#b#', '!', 'a#b');
?>