Cookie als variabele

Als er een HTTP aanvraag wordt verstuurd door de user agent met daarin cookie informatie, dan zal PHP het automatisch omzetten in data welke aangeroepen kunnen worden via variabelen. Als voorbeeld, als de user agent een cookie verstuurd met de naam: php, dan zou het script de cookie kunnen aanroepen via de volgende 3 mogelijkheiden:
- $php - de waarde is opgeslagen in een globale variabele met exact de zelfde naam als de cookie
- $HTTP_COOKIE_VARS['php'] - de globale array bevat alleen de variabelen van cookies. Dit helpt het verschil tussen normale variabelen en cookies te onderscheiden.
- $_COOKIE['php'] - de globale array bevat alleen de variabelen van cookies. Dit helpt het verschil tussen normale variabelen en cookies te onderscheiden.

Eén manier die hier wordt beschreven is goed. Dit is de laatste. Sinds PHP versie 4.3 is de setting 'register_globals' standaard op de waarde 'off'. Dit houdt in dat de cookie niet meer aanroepbaar is via de variabele $php.

De global $HTTP_COOKIE_VARS is nog wel te gebruiken (echter niet in alle versies van PHP) maar is niet meer de standaard. Daarnaast is dit ook meer typwerk dan $_COOKIE. Gebruik dus altijd de globale variabele $_COOKIE bij het aanroepen van een cookie.

Onthoud dat cookie namen welke ongeldige karakters bevatten (alleen alphanumeric en underscores zijn geldig) automatisch veranderd worden. Het ongeldige karakter wordt automatisch vervangen met een underscore (_). Dit zou betekenen dat als je de cookie ge-set hebt met de naam on%gel.dig_, deze vervangen zou worden door: 'on_gel_dig_'. De cookie zou je nu dus kunnen aanroepen via $_COOKIE['on_gel_dig_']. Dit brengt echter veel verwarring. Zorg er dus voor dat je de ongeldige karakters altijd mijdt.

De basis manier om een cookie te setten, is door setcookie() te gebruiken. Ik heb al de makkelijkste manier uitgelegd van deze functie. Ik gebruik simpelweg setcookie() met een naam en inhoud. Als voorbeeld, om de inhoud 'inhoud' met de cookienaam 'cookienaam' te setten, gebruiken we:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
    setcookie("cookienaam", "inhoud");
?>

« Lees de omschrijving en reacties

Inhoudsopgave

  1. Wat zijn cookies?
  2. Werking van cookies?
  3. Cookies in PHP
  4. Tijdsduur van cookies
  5. Cookie als variabele
  6. Meerdere cookies
  7. Verloop data uitgebreid
  8. Specifieke pagina's defineren
  9. Cookies voor HTTPS
  10. Cookie verwijderen

PHP tutorial opties

 
 

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.