按位运算符文件函数php

Alb*_*aba 3 php image bitwise-operators

谁能解释一下这个功能是如何工作的?

    $size=100 //kb
    if (filesize(file) > ($size << 10))
     echo "file too big";
Run Code Online (Sandbox Code Playgroud)

$size << 10工作怎么样?如何让它使用MB而不是KB?

Ja͢*_*͢ck 5

表达式$size << 10将位模式向左移动10次,有效地乘以1024; 换句话说,就是这样$size * 1024.

每次执行左移时,都会将该值乘以系数2.另请参见按位运算符.

如果你想$size用MB表示大小,你再乘以1024,即

if ($filesize($file) > $size * 1024 * 1024) {
    echo "file too big";
}
Run Code Online (Sandbox Code Playgroud)

要么:

if ($filesize($file) > $size << 20) {
    echo "file too big";
}
Run Code Online (Sandbox Code Playgroud)