Yeah there's very few cases where you need to, or even want to, use eval
You seem to be doing here as a way to not use arrays, which is strange because with Torque's stuffty array implementation and $array[1] being the same as $array1, pretty much their only purpose is to prevent you from needing to do exactly what you did.
I'm not familiar with CityRPG's code at all, but that seems a very strange way to retrieve the data (client has already been given through the getData function, why is it needed again in the array index? Are you sure the index shouldn't just be "cropSell" ?), so you may want to look into it further.