eregi, ik snap er niks meer van..

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Kevin van der Burgt

kevin van der Burgt

25/06/2009 22:44:00
Quote Anchor link
Hallo,

Waarom werk de onderstaande script totaal niet?
ik heb al 100 keer de php.net gelezen over da teregi gedoe maar het lukt maar steeds niet..


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
    $str
='hallo';
    $allow="abcdefghijklmnopqrstuvwxyz";
    if(eregi($allow, $str)){
        echo ":D";
    }
else {
        echo ":'(";
    }

?>
 
PHP hulp

PHP hulp

26/12/2024 15:49:30
 
Joey Drieling

Joey Drieling

25/06/2009 23:07:00
Quote Anchor link
je moet ereg gebruiken.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
    $str
='Hallo';
    if(ereg("^[A-Za-z]+$", $str)){
        echo ":D";
    }
else {
        echo ":'(";
    }

?>
 
Kevin van der Burgt

kevin van der Burgt

25/06/2009 23:09:00
Quote Anchor link
ah, bedankt.

Wat is eigenlijk beter?

preg_match og ereg?
 
Joey Drieling

Joey Drieling

25/06/2009 23:13:00
Quote Anchor link
Preg_match is vooor meer iets uit een strin te zoeken/haalen.

Ereg is voor strin controle zoals telefoon numer email op geldigheid
 
Kevin van der Burgt

kevin van der Burgt

25/06/2009 23:14:00
Quote Anchor link
Maar ik heb gehoord dat in PHP6 de ereg vervalt en dan preg_match word.?
 
Joey Drieling

Joey Drieling

25/06/2009 23:17:00
Quote Anchor link
dach het niet preg_match bestaat al vanaf php 4 en doet heelwat anders als ereg
 
Kevin van der Burgt

kevin van der Burgt

25/06/2009 23:19:00
Quote Anchor link
Ah oke, en dan nog een vraagje.

over deze string: ^[A-Za-z]+$

Q1: Waar staat de '^' voor?
Q2: Waar staat de '+$' voor?
 
Joey Drieling

Joey Drieling

25/06/2009 23:24:00
Quote Anchor link
Zoon expert ben ik ook weer niet en eerlijk gezegt weet ik niet wwar dat voor dient nooit in verdiept weet aleen dat het niet werkt zonder
 
Kevin van der Burgt

kevin van der Burgt

25/06/2009 23:24:00
Quote Anchor link
ah oke :)
 
Niels DB

Niels DB

25/06/2009 23:31:00
Quote Anchor link
^ staat voor het begin, dus ^[a-z] = in het begin alleen tekens van a tot z
$ staat voor einde

Ze moeten er niet staan, je kan ze in jouw geval vervangen door /

die + staat voor een of meerdere

^[A-Za-z]+$
dit test dus of een string alleen maar (1 of meerdere) letters heeft
Gewijzigd op 01/01/1970 01:00:00 door Niels DB
 
Kevin van der Burgt

kevin van der Burgt

25/06/2009 23:32:00
Quote Anchor link
okee! tankyou! weer wat geleerd (a)
 
Afra ca

Afra ca

26/06/2009 00:31:00
Quote Anchor link
Met alle respect joey, maar quote van php.net:

Quote:
ote: As of PHP 5.3.0 the regex extension is deprecated, calling this function will issue an E_DEPRECATED notice.


edit:

Beschrijving ereg:

Quote:
ereg &#8212; Regular expression match


Beschrijving preg_match:

Quote:
preg_match &#8212; Perform a regular expression match


Dus gewoon preg_match gebruiken!
Gewijzigd op 01/01/1970 01:00:00 door Afra ca
 
Joey Drieling

Joey Drieling

26/06/2009 07:52:00
Quote Anchor link
Okay sorry als ik heb het dan ooit een keer verkeerd bergreepen zal dat ff weer eens op php.net weer door nemen.

Zo zie je maar weer dat je van fouten maken leert ;)
 
Jacco Engel

Jacco Engel

26/06/2009 08:03:00
Quote Anchor link
Niels schreef op 25.06.2009 23:31:
^[A-Za-z]+$
dit test dus of een string 1 of meerdere letters heeft


Dit test of een string alleen maar letters heeft ;)

Verder heeft hij wel degelijk een ^ en een $ nodig omdat hij wil checken of er alleen maar Letters zijn
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.