PHP setrawcookie() συνάρτηση

Ορισμός και Χρήση

Η συνάρτηση setrawcookie() δεν URL κωδικοποιεί την τιμή του cookie, αποστέλλει ένα HTTP cookie.

Το cookie είναι μια μεταβλητή που αποστέλλεται από τον διακομιστή στον περιηγητή. Το cookie είναι συνήθως ένα μικρό κείμενο αρχείο που ενσωματώνεται από τον διακομιστή στο υπολογιστή του χρήστη. Καθεξής που ο υπολογιστής ζητά μια σελίδα μέσω του περιηγητή, αποστέλλεται αυτό το cookie.

Το όνομα του cookie καθορίζεται ως η ίδια ονομαστική μεταβλητή. Για παράδειγμα, αν το cookie που αποστέλλεται ονομάζεται "name", δημιουργείται αυτόματα η μεταβλητή $user που περιέχει την τιμή του cookie.

Η ρύθμιση του cookie πρέπει να γίνει πριν από οποιαδήποτε άλλη αποστολή στοιχείων.

Αν περάσει, η συνάρτηση επιστρέφει true, αλλιώς false.

Γλώσσα

setcookie(name,value,expire,path,domain,secure)
Παράμετροι Περιγραφή
name Απαιτείται. Προσδιορίζει το όνομα του cookie.
value Απαιτείται. Προσδιορίζει την τιμή του cookie.
expire Προαιρετικό. Προσδιορίζει την διάρκεια ζωής του cookie.
path Προαιρετικό. Προσδιορίζει το δρόμο του διακομιστή του cookie.
domain Προαιρετικό. Προσδιορίζει το όνομα του τομέα του cookie.
secure Προαιρετικό. Προσδιορίζει αν το cookie θα μεταφέρεται μέσω ασφαλούς HTTPS συνδέσεων.

Συμβουλές και Σημειώσεις

Σημείωση:Η τιμή του cookie με το όνομα "user" μπορεί να προσέγγιστεί μέσω $HTTP_COOKIE_VARS["user"] ή $_COOKIE["user"].

Σημείωση:setrawcookie() με setcookie() Απέξω από το ίδιο, η διαφορά είναι ότι η τιμή του cookie δεν URL κωδικοποιείται αυτόματα κατά την αποστολή στον πελάτη.

Παράδειγμα

Παράδειγμα 1

Ρύθμιση και αποστολή cookie:

<?php
$value = "my cookie value";
// Αποστολή ενός απλού cookie
setrawcookie("TestCookie",$value);
?>
<html>
<body>
...
...
<?php
$value = "my cookie value";
// Αποστολή ενός cookie που λήγει μετά από 24 ώρες
setrawcookie("TestCookie",$value, time()+3600*24);
?>
<html>
<body>
...
...

Παράδειγμα 2

Αναζητήσεις διαφορετικών μεθόδων για την τιμή του cookie:

<html>
<body>
<?php
// Εκτυπώνει ένας συγκεκριμένος cookie
echo $_COOKIE["TestCookie"];
echo "<br />";
echo $HTTP_COOKIE_VARS["TestCookie"];
echo "<br />";
// Output all cookies
print_r($_COOKIE);
?>
</body>
</html>

Output:

my cookie value
my cookie value
Array ([TestCookie] => my cookie value)

Example 3

// Delete a cookie by setting the expiration date to a past date/time:

<?php
// Set the expiration date to one hour ago
setrawcookie ("TestCookie", "", time() - 3600);
?>
<html>
<body>
...
...

Example 4

Create an array cookie:

<?php
setrawcookie("cookie[three]","cookiethree");
setrawcookie("cookie[two]","cookietwo");
setrawcookie("cookie[one]","cookieone");
// Output cookie (after page reload)
if (isset($_COOKIE["cookie"]))
  {
  foreach ($_COOKIE["cookie"] as $name => $value)
    {
    echo "$name : $value <br />";
    }
  }
?>
<html>
<body>
...
...

Output:

three : cookiethree
two : cookietwo
one : cookieone