PHP 8.5.0 Beta 3 available for testing

Random\Randomizer::getBytes

(PHP 8 >= 8.2.0)

Random\Randomizer::getBytes โ€” ใƒฉใƒณใƒ€ใƒ ใชใƒใ‚คใƒˆๅˆ—ใ‚’ๅ–ๅพ—ใ™ใ‚‹

่ชฌๆ˜Ž

public Random\Randomizer::getBytes(int $length): string

็ญ‰็ขบ็އใซ้ธใฐใ‚Œใ‚‹ใƒฉใƒณใƒ€ใƒ ใชใƒใ‚คใƒˆๅˆ—ใ‚’ๅซใ‚€ใ€ๆŒ‡ๅฎšใ•ใ‚ŒใŸ้•ทใ• length ใฎๆ–‡ๅญ—ๅˆ—ใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚

่ฟ”ใ•ใ‚Œใ‚‹ใƒใ‚คใƒˆๅˆ—ใฏๅฎŒๅ…จใซใƒฉใƒณใƒ€ใƒ ใซ้ธใฐใ‚Œใ‚‹ใŸใ‚ใ€ ็ตๆžœใฎๆ–‡ๅญ—ๅˆ—ใฏๅฐๅญ—ใงใใชใ„ๆ–‡ๅญ—ใ‚„ใ€ ไธๆญฃใช UTF-8 ใฎใ‚ทใƒผใ‚ฑใƒณใ‚นใจใชใ‚‹ๅฏ่ƒฝๆ€งใŒใ‚ใ‚Šใพใ™ใ€‚ ใ‚ˆใฃใฆใ€่ปข้€ใ—ใŸใ‚Š่กจ็คบใ—ใŸใ‚Šใ™ใ‚‹ๆ™‚ใซใฏใ‚จใƒณใ‚ณใƒผใƒ‰ใŒๅฟ…่ฆใ‹ใ‚‚ใ—ใ‚Œใพใ›ใ‚“ใ€‚

ใƒ‘ใƒฉใƒกใƒผใ‚ฟ

length

่ฟ”ใ™ในใใƒฉใƒณใƒ€ใƒ ใชๆ–‡ๅญ—ๅˆ—ใฎ้•ทใ•ใ‚’ใƒใ‚คใƒˆๅ˜ไฝใงๆŒ‡ๅฎšใ—ใพใ™ใ€‚1 ไปฅไธŠใงใชใ‘ใ‚Œใฐใชใ‚Šใพใ›ใ‚“ใ€‚

ๆˆปใ‚Šๅ€ค

ๆŒ‡ๅฎšใ•ใ‚ŒใŸ้•ทใ•ใฎใ€ใƒฉใƒณใƒ€ใƒ ใชใƒใ‚คใƒˆๅˆ—ใ‚’ๅซใ‚“ใ ๆ–‡ๅญ—ๅˆ—ใ‚’่ฟ”ใ—ใพใ™ใ€‚

ใ‚จใƒฉใƒผ / ไพ‹ๅค–

  • length ใฎๅ€คใŒ 1 ใ‚ˆใ‚Šๅฐใ•ใ„ๅ ดๅˆใ€ ValueError ใ‚’ใ‚นใƒญใƒผใ—ใพใ™ใ€‚
  • Random\Randomizer::$engine ใซๅญ˜ๅœจใ™ใ‚‹ Random\Engine::generate() ใƒกใ‚ฝใƒƒใƒ‰ ใŒใ‚นใƒญใƒผใ—ใŸใ€ใ‚ใ‚‰ใ‚†ใ‚‹ Throwable ใŒใ‚นใƒญใƒผใ•ใ‚Œใพใ™ใ€‚

ไพ‹

ไพ‹1 Random\Randomizer::getBytes() ใฎไพ‹

<?php
$r
= new \Random\Randomizer();

echo
bin2hex($r->getBytes(8)), "\n";
?>

ไธŠใฎไพ‹ใฎๅ‡บๅŠ›ใฏใ€ ใŸใจใˆใฐไปฅไธ‹ใฎใ‚ˆใ†ใซใชใ‚Šใพใ™ใ€‚

ebdbe93cd56682c2

ๅ‚่€ƒ

  • random_bytes() - ๆš—ๅทๅญฆ็š„ใซใ‚ปใ‚ญใƒฅใ‚ขใชใ€ใƒฉใƒณใƒ€ใƒ ใชใƒใ‚คใƒˆๅˆ—ใ‚’็”Ÿๆˆใ™ใ‚‹
  • base64_encode() - MIME base64 ๆ–นๅผใงใƒ‡ใƒผใ‚ฟใ‚’ใ‚จใƒณใ‚ณใƒผใƒ‰ใ™ใ‚‹
  • Random\Randomizer::getBytesFromString() - ๆ–‡ๅญ—ๅˆ—ใ‹ใ‚‰ใƒฉใƒณใƒ€ใƒ ใซใƒใ‚คใƒˆๅˆ—ใ‚’ๅ–ๅพ—ใ™ใ‚‹
๏ผ‹add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top