Non so quale sia di preciso la logica e lo scopo di ciò che ti serve.
Hai 2 cicli annidati sullo stesso array, $i e $j ti vanno giusti perché il for ha l'inizializzazione a 0 di tali variabili, $x invece aumenta sempre, è questo che ti serve realmente?
Mettere $x = 0; dentro il primo for sarebbe sbagliato per la tua logica di funzionamento?

P.S. quel $j = 0; prima del primo for non ha ragione di esserci, tanto viene inizializzato nel secondo for, dove effettivamente viene usato.