PHP fgets loads CPU to 100%

I’ve made read key press function in PHP. The code sets non-block stream mode for STDIN and in while waits when STDIN will receive any data. It works, but I noticed that function loads CPU to 100%. How much is bad this code for CPU and is there any another way to check is STDIN contains any data?

PHP standard input?

I know PHP is usually used for web development, where there is no standard input, but PHP claims to be usable as a general-purpose scripting language, if you do follow it’s funky web-based conventions. I know that PHP prints to stdout (or whatever you want to call it) with print and echo, which is simple enough, but I’m wondering how a PHP script might get input from stdin (specifically with fgetc(), but any input function is good), or is this even possible?