Cre que este código casi funciona:
Código PHP:
<?php
$op=$_POST['op'];
print_r($op);
?>
<html>
<head>
<title>Prueba Checkbox</title>
</head>
<body>
<form name="f1" action="<?php echo $_SERVER['PHP_SELF']?>" method="POST">
<input type="checkbox" name="op[]" value="1" <?php if ($op[0]=="1") echo "checked disabled";?>> Validacion 1 <br>
<input type="checkbox" name="op[]" value="1" <?php if ($op[1]=="1") echo "checked disabled";?>> Validacion 2 <br>
<input type="checkbox" name="op[]" value="1" <?php if ($op[2]=="1") echo "checked disabled";?>> Validacion 3 <br>
<input type="checkbox" name="op[]" value="1" <?php if ($op[3]=="1") echo "checked disabled";?>> Validacion 4 <br>
<input type="submit" name="enviar" value="Enviar">
</form>
</body>
</html>
Me parece que cuando esta disabled un campo no se envía en el submit.