<?php

define('APP_KEY', '790437f56e3cf16269d55fc041386a3c');

function create_token($id, $key)
{
	$time = time();
	$data = array($id, $time, $key);
	sort($data, SORT_STRING);
	$sign = sha1(implode($data));
	return implode('|', compact('id', 'time', 'sign'));
}

function check_token($token, $key)
{
	$token = explode('|', $token);
	if (!isset($token[2])) {
		return false;
	}
	list($id, $time, $sign) = $token;
	$data = compact('id', 'time', 'key');
	sort($data, SORT_STRING);
	return $sign == sha1(implode($data)) ? true : false;
}

$token = '123|1577114651|76efdd6a89e89d8af2db4bd14c76603c4bfbeb4b';
echo create_token(123, APP_KEY);


// true
var_dump(check_token($token, APP_KEY));