ciao
se usi un ciclo for per forza di cosa devi indicare l'elemento più alto nella sua condizione
for($i=0;$i<=20;$i++)
se non ho capito male questo ciclo for diventa sempre variabile e il modo per renderlo e mettere al posto di 20 una stringa che vari a seconda delle condizioni che vuoi dettare
diventa
for($i=0;$i<=$var;$i++)
dove $var è il numero massimo che $i può assumere di consenguenza
sarà $var il tuo massimo