In declaring that the law of Moses is fulfilled (see verse 17), the Savior was not rescinding the eternal law of sacrifice but rather was declaring that the specific practice or instructional methodology employed earlier was no longer in effect.
From the days of Adam to Moses and from Moses to Jesus Christ, animal sacrifices were used to symbolically point toward the future atoning sacrifice of Jesus Christ (see Jacob 4:5).
Abinadi spoke of such sacrificial rites and the accompanying carnal codes as “types of things to come” (Mosiah 13:31).
Inasmuch as the Savior had already shed his blood and drunk of the “bitter cup” in Gethsemane and on Golgotha and had broken the bands of death in coming forth from the garden tomb, a new day had now dawned that required new symbolism, a new type of sacrifice, and new instruction in the eternal meaning of the covenant of sacrifice.