mirror of
https://github.com/wallabag/wallabag.git
synced 2024-09-26 13:30:08 +00:00
28 lines
739 B
PHP
28 lines
739 B
PHP
|
<?php
|
||
|
|
||
|
namespace Wallabag\CoreBundle\Tools;
|
||
|
|
||
|
class Utils
|
||
|
{
|
||
|
/**
|
||
|
* Generate a token used for RSS
|
||
|
*
|
||
|
* @return string
|
||
|
*/
|
||
|
public static function generateToken()
|
||
|
{
|
||
|
if (ini_get('open_basedir') === '') {
|
||
|
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
|
||
|
// alternative to /dev/urandom for Windows
|
||
|
$token = substr(base64_encode(uniqid(mt_rand(), true)), 0, 20);
|
||
|
} else {
|
||
|
$token = substr(base64_encode(file_get_contents('/dev/urandom', false, null, 0, 20)), 0, 15);
|
||
|
}
|
||
|
} else {
|
||
|
$token = substr(base64_encode(uniqid(mt_rand(), true)), 0, 20);
|
||
|
}
|
||
|
|
||
|
return str_replace('+', '', $token);
|
||
|
}
|
||
|
}
|