downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

OAuthProvider::is2LeggedEndpoint> <OAuthProvider::consumerHandler
[edit] Last updated: Fri, 17 May 2013

view this page in

OAuthProvider::generateToken

(PECL OAuth >= 1.0.0)

OAuthProvider::generateTokenGenerate a random token

Descrição

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

Generates a string of pseudo-random bytes.

Parâmetros

size

The desired token length, in terms of bytes.

strong

Setting to TRUE means /dev/random will be used for entropy, as otherwise the non-blocking /dev/urandom is used. This parameter is ignored on Windows.

Valor Retornado

The generated token, as a string of bytes.

Erros

If the strong parameter is TRUE, then an E_WARNING level error will be emitted when the fallback rand() implementation is used to fill the remaining random bytes (e.g., when not enough random data was found, initially).

Exemplos

Exemplo #1 OAuthProvider::generateToken() example

<?php
$p 
= new OAuthProvider();

$t $p->generateToken(4);

echo 
strlen($t),  PHP_EOL;
echo 
bin2hex($t), PHP_EOL;

?>

O exemplo acima irá imprimir algo similar à:

4
b6a82c27

Notas

Nota:

When not enough random data is available to the system, this function will fill the remaining random bytes using the internal PHP rand() implementation.

Veja Também



add a note add a note User Contributed Notes OAuthProvider::generateToken - [1 notes]
up
1
carlosouza at me dot com
1 year ago
Be careful when setting the 'strong' parameter to true.

If you system doesn't have enough entropy your script will block which can cause timeouts in other parts of your code.

In my case, the most serious symptom was my script blocking when trying to read from /dev/random and causing a 'MySQL has gone away' error.

Hopefully this saves someone the trouble when deciding to use /dev/random entropy

 
show source | credits | stats | sitemap | contact | advertising | mirror sites