I usually buy our shower curtain liners for a dollar, but that doesn't mean I don't want them to last as long as possible. Once our curtain gets to the point that mildew has taken over, rather than spending ages scrubbing, I simply trim the curtain.
Rather than cut it perfectly, I bunch the curtain, find the stopping point of the mildew, & cut.
While the curtain is a little jagged it's no worse for wear & this process can be repeated until the curtain is too short to stay in the tub. Also, if a hole at the top rips, simply use a hole punch to punch another hole. Using these methods, I only have to replace our liners once a year, saving money & saving trash.