..
Vi hade redan antytt under de senaste dagarna genom sidorna i vår blogg, men i dag jag skulle vilja undersöka ett ämne som jag tror kommer vara av intresse för tusentals utvecklare - som jag - varje dag använder PHP för att utveckla sina webbapplikationer.
Från och med version 5.3 av PHP, i själva verket kan utvecklare som vill utnyttja möjligheterna med reguljära uttryck inte längre använda sig av POSIX funktioner (så att säga ereg () och familjen) men måste, med nödvändighet, använda funktionerna PCRE (Perl Compatible Regular uttryck), till exempel, preg_match () .
Den PCRE funktioner inbyggda i PHP kan du använda den typiska syntaxen för reguljära uttryck i Perl (mer specifikt, ger den nuvarande implementationen stöd till syntaxen i Perl 5,005), vilket skiljer sig något från den i POSIX funktioner. För mer information om syntaxen för PCRE är möjligt att konsultera bruksanvisningen finns tillgänglig på den officiella hemsidan PCRE.org.
Om du vill göra en jämförelse mellan en sträng och ett mönster (en modell skriven i form av reguljära uttryck) kommer att behöva använda preg_match () som i själva verket ersätta ereg () och eregi ().
Använda preg_match () är i allmänt bruk, ganska enkelt: du passerar funktionen mönstret och strängen för att kontrollera. Om mönstret är nöjd, returnerar funktionen 1 om 0 (eller FALSKT om ett fel).
Faktum är att migrera från ereg () är inte komplicerad sak. Du kommer att behöva någon liten uppfinningsrikedom i utformningen av mönstret.
Här är ett exempel:
<? Php
if (preg_match ('/ mrwebmaster / i "," Leve MrWebmaster!')) {
echo "Hittade";
Else {}
echo "hittades inte";
}
?>
Detta är samma:
<? Php
if (eregi ("mrwebmaster", "Leve MrWebmaster! ')) {
echo "Hittade";
Else {}
echo "hittades inte";
}
?>
I vårt enkla exempel med hjälp av preg_match () vi använde den sträng som ett mönster
/ Mrwebmaster / sLåt oss se syntaxen:
Som ni kan se skillnaden med ereg () är inte mycket, låt oss sammanfatta dem kort:
På grundval av ovanstående (och skillnader som har nämnts) kan vi tänka igen (delvis) gäller teoretiska förklaringar om syntaxen i reguljära uttryck kan hittas på denna sida av artikeln "reguljära uttryck i PHP" tillägnad den gamla POSIX funktioner .
| |
Linux (kurs)
Komplett av öppen källkod-system. Från 49 €. |
| |
MySQL (kurs)
Hantering av öppen källkod databas. Från 39 €. |
| |
PHP (kurs)
Fullständig kurs för att skapa dynamiska webbplatser. Från 49 €. |