Non ne sono sicuro ma prova cosi :


$text = str_replace('\"', "%22", $text); //RIGA INCRIMINATA

oppure


$text = str_replace(chr(34), "%22", $text); //RIGA INCRIMINATA