class Encrypt{ //加密 public function image_encode($filePath, $newPath) { $fileId = fopen($filePath, 'rb+'); $fileSize = fileSize($filePath); $img = fread($fileId, $fileSize); $imgUnpack = unpack('C*', $img); fclose($fileId); $tempArr = []; for ($i = 1; $i <= $fileSize; $i++) { $value = 0; if ($i % 3 == 0) { $value = 2; } elseif ($i % 5 == 0) { $value = 4; } elseif ($i % 7 == 0) { $value = 6; } $byte = $imgUnpack[$i]; $byte = $byte + $value; $tempArr[] = pack('C*', $byte); } $img = implode('', $tempArr); file_put_contents($newPath, $img); } //解密 public function image_decode($filePath, $newPath) { $fileId = fopen($filePath, 'rb+'); $fileSize = filesize($filePath); $img = fread($fileId, $fileSize); $imgUnpack = unpack('C*', $img); fclose($fileId); $tempArr = []; for ($i = 1; $i <= $fileSize; $i++) { $value = 0; if ($i % 3 == 0) { $value = 2; } elseif ($i % 5 == 0) { $value = 4; } elseif ($i % 7 == 0) { $value = 6; } $byte = $imgUnpack[$i]; $byte = $byte - $value; $tempArr[] = pack('C*', $byte); } $img = implode('', $tempArr); file_put_contents($newPath, $img); } }