Inleiding tot PHP-filters

Er zijn maar weinig talen met filterfuncties. Filters zijn een van de functies met toegevoegde waarde van programmeertalen. Dit helpt ons om de gegevens of de tekenreeks te filteren voordat deze wordt verwerkt. Dit is de oproep van de tijd om dit te gebruiken om een ​​aantal kwetsbaarheidsproblemen in het systeem te voorkomen. PHP-filters kunnen worden gebruikt voor het valideren of saniteren van de externe ingangen. Kortom, het PHP-filter is een extensie die verschillende functies en functies biedt die we tijdens het coderen kunnen gebruiken. We nemen bijvoorbeeld klantinvoer uit een formulier als e-mail-ID, we moeten valideren of opschonen voordat de database-gerelateerde bewerking plaatsvindt. Wij als coder of ontwikkelaar moeten deze filters in PHP gebruiken volgens onze zakelijke behoeften en de vereisten.

Syntaxis

Sanering en de filters zijn de meest voorkomende bewerkingen in de webapplicatieomgeving. Hier is de basissyntaxis:

filter_var(variable, filter, options)

Deze functie filter_var heeft 3 parameters. De laatste 2 parameters, filter en opties zijn optioneel. De eerste is een variabele of de identificatiemiddelen zelf. Dit is degene die we willen filteren, de tweede is wat we willen doen (in principe geven we de ID van de beschikbare opties in PHP door), en de laatste is de filtergerelateerde opties. Laten we hetzelfde begrijpen met een quizvoorbeeld:

<_?php
$int_val = 200;
if(filter_var($int_val, FILTER_VALIDATE_INT))(
echo "The $int_val is a valid one."; // valid
) else(
echo "The $int_val not a valid input as an integer"; // invalid
)
?>

In het bovenstaande voorbeeld gebruiken we een filter en controleren of we een geheel getal in variabele $ int_val hebben of niet. Dus hier is de uitvoer voor hetzelfde.

Output:

Waarom gebruiken we Filter in PHP?

Veel PHP-webtoepassingen ontvangen externe invoer van de client-kant. Het idee achter het gebruik hiervan is om de gebruikersinvoer schoon te maken voordat deze wordt verwerkt, omdat we niet kunnen verwachten dat de gebruiker alle gegevens correct invoert. Elke externe gebruiker of systeeminvoer of gegevens kunnen leiden tot een kritiek beveiligingsprobleem.

We kunnen hier filteren om de ingevoerde gegevens van de verschillende externe bronnen, zoals:

  • Directe invoer van clientgebruiker vanuit het formulier
  • Gegevens van cookies
  • Gegevens van de webservices
  • Gegevens van de servervariabelen
  • Resultaten van databasequery's

PHP-filters en de ontsmettingsmiddelen maken samen de mogelijkheid mogelijk om te krijgen of een invoer geldig is of niet. Als dit geen geldige invoer is, kunnen we dit in dit geval opschonen om een ​​geldige invoer te maken. In de volgende voorbeeldsectie zullen we verschillende voorbeelden hiervan bekijken.

Voorbeeld van filter

Er zijn verschillende soorten filters beschikbaar in PHP. We kunnen die lijst controleren met de functie filter_list (). Kortom, deze filterfuncties kunnen worden gebruikt om de URL, tekenreeks, nummer, IP-adres, enz. Te filteren.

Voorbeeld 1

In deze sectie zullen we de verschillende filtervoorbeeldprogramma's één voor één bekijken.

Een string opschonen

Om te controleren of een string geldig is of niet

<_?php
$comment = "Hello word";
if(filter_var($comment, FILTER_SANITIZE_STRING))(
echo "The $comment is a valid one."; // valid
) else(
echo "The $comment not a valid input"; // invalid
)
?>

In het bovenstaande voorbeeld zien we een geldige tekenreeks, daarom geeft deze de geldige.

Output:

Verkrijg de gesaneerde string als een output

<_?php
$comment = " Hello word ";
echo "Before sanitizing: ". $comment;
$comment = filter_var($comment, FILTER_SANITIZE_STRING);
echo "
"; // for new line
echo "After sanitizing: ". $comment;
?>

We kunnen zien dat we twee verschillende uitgangen hebben. We kunnen de output zien voor het saneren en het nabehandelen is anders. Na het opschonen zijn HTML-tags verwijderd door de PHP-filterfunctie.

Output:

Voorbeeld 2

Valideer een IP-adres

PHP-filterfunctie kan dit werk voor ons doen. Laten we het voorbeeld bekijken.

<_?php
$ip_address = "172.16.254.1:40";
if(filter_var($ip_address, FILTER_VALIDATE_IP))(
echo "The $ip_address is a valid one."; // valid
) else(
echo "The $ip_address is not a valid input"; // invalid
)
?>

Output:

Voorbeeld 3

Een e-mailadres opschonen en valideren

<_?php
$email_address = " @testmail.com";
code>
echo "Before Sanitizing: " . $email_address ."
";
if(filter_var($email_address, FILTER_VALIDATE_EMAIL))(
echo "The $email_address is a valid one."; // valid
) else(
echo "The $email_address not a valid input"; // invalid
)
echo "
";
echo "After Sanitizing: " . filter_var($email_address, FILTER_SANITIZE_EMAIL);
?>

In het bovenstaande voorbeeld hebben we een ongeldige waarde voor de e-mail-id omdat we deze uitvoer krijgen met behulp van de filterfunctie. Maar op het moment dat we het zuiveren geeft het de juiste e-mail.

Output:

<_?php
$email_address = " ";
if(filter_var($email_address, FILTER_VALIDATE_EMAIL))(
echo "The $email_address is a valid one."; // valid
) else(
echo "The $email_address not a valid input"; // invalid
)
?>

In het bovenstaande voorbeeld PHP-code controleren we of de e-mail geldig is of niet.

Output:

Voorbeeld 4

URL opschonen en valideren

In dit voorbeeld zullen we zien of een invoer-URL geldig is of niet? Als het geen geldige URL is, zal het die opschonen om het correct te maken.

<_?php
$URL = "https://www.educba.com/ courses ";
echo "Before Sanitizing: " . $URL ."
";
if(filter_var($URL, FILTER_VALIDATE_URL))(
echo "The $URL is a valid one."; // valid
) else(
echo "The $URL is not a valid input"; // invalid
)
echo "
";
echo "After Sanitizing: " . filter_var($URL, FILTER_SANITIZE_URL);
?>

Output:

Conclusie

We moeten het PHP-filter gebruiken om de gebruikersinvoer te valideren of op te schonen. Op deze manier kunnen we de kwetsbare gebruikersinvoer beperken. We kunnen de verschillende PHP-filterfunctie gebruiken om de gebruikersinvoer en de waarde te valideren. We kunnen ook kiezen voor opschonen en de waarde opschonen (de gebruikersinvoer of de direct toegewezen). We moeten altijd de PHP-sanitizer gebruiken voordat we cookiegegevens gebruiken voor de gegevensverwerking.

Aanbevolen artikelen

Dit is een gids voor PHP-filters geweest. Hier bespreken we ook de syntaxis, waarom we een filter in PHP en voorbeelden gebruiken. U kunt ook de volgende artikelen bekijken voor meer informatie–

  1. PHP Frameworks
  2. Tableau contextfilter
  3. Wat is hoek 2?
  4. Bidsprinkhaan Bug Tracker
  5. Hoe werken cookies in JavaScript met Example?