# OAuthProvider::generateToken

(PECL OAuth >= 1.0.0)

OAuthProvider::generateToken — Génère un jeton aléatoire

### Description

final public static OAuthProvider::generateToken(int `$size`, bool `$strong` = `false`): string

Génère une chaîne de caractères d'octets pseudo-aléatoires.

### Liste de paramètres

`size`

  La longueur désirée du jeton, en octets.

`strong`

  Définit à `true`, signifie que `/dev/random` sera utilisé, sinon, ce sera `/dev/urandom`. Ce paramètre est ignoré sous Windows.

### Valeurs de retour

Le jeton généré, sous la forme d'une chaîne de caractères d'octets.

### Erreurs / Exceptions

Si le paramètre `strong` vaut `true`, alors, une alerte de niveau `E_WARNING` sera émise lorsque la fonction de rappel rand() est utilisée pour compléter les octets aléatoires manquant (i.e., lorsqu'il n'y a pas assez de données aléatoires initialement).

### Exemples

Exemple #1 Exemple avec OAuthProvider::generateToken()

`<?php
$p = new OAuthProvider();
$t = $p->generateToken(4);
echo strlen($t), PHP_EOL;
echo bin2hex($t), PHP_EOL;
?>`

Résultat de l'exemple ci-dessus est similaire à :

    4
    b6a82c27

### Notes

> Note:

> Lorsqu'il n'y a pas assez de données aléatoires de disponible sur le système, cette fonction complètera les octets manquant en utilisant la fonction PHP interne rand().

### Voir aussi

- openssl_random_pseudo_bytes() - Génère une chaine pseudo-aléatoire d'octets
- mcrypt_create_iv() - Crée un vecteur d'initialisation (IV) à partir d'une source aléatoire