python到php的转换

Lan*_*don 1 php python

我正在尝试将python脚本的一部分转换为php.我知道其中的大部分内容,但是我遇到了与位移相关的问题(我认为?),即使在PHP中我也没有多少经验!有人可以将这个python函数翻译成php吗?

def setBit(value, position, on):
    if on:
        mask = 1 << position
        return (value | mask)
    else:
        mask = ~(1 << position)
        return (value & mask)    
Run Code Online (Sandbox Code Playgroud)

Tim*_*per 7

function setBit($value, $position, $on = true) {
    if($on) {
        return $value | (1 << $position);
    }
    return $value & ~(1 << $position);
}
Run Code Online (Sandbox Code Playgroud)