I am interested in writing a large scale, cross platform payroll/hr/gl appl entirely in php + mysql Innodb (for transaction support). I have 2 php programmers 1 asp/foxpro/access programmer to help me.
I see 4 big hurdles to overcome in my php design: Large Libraries, Long Processes, Reporting, Loosely Typed Variables 1) Payroll apps require large tax libraries (federal, every state and locality). Now If I were interested in using ASP (which I'm not) I would probably compile these libraries into a .dll that would be loaded in-process with scripts that require it. Since I'm using Php I would most likely create a few really huge include files "fedtax.inc.php","statetax.inc.php","localtax.inc.php" that had all of my income tax calculations. I'm guessing these three libraries will be about 200Kb combined and need to be loaded often. Is it feasible to create such large includes for an app that will likely have 1000+users. Is there a better way to keep these functions available to my scripts without using these large includes? 2)Long Processes. There are 2 types of users...general and admin. There will be only about 5 administrators. The admin users will need to run long processes that take about 5-15 minutes each. They cannot timeout and they must be done throughout the day while general users are working in the application as well. Is there a big problem with this? What steps should I take to ensure these long processes complete and do not timeout. 3)Reporting. I think I can get by with HTML reports for the most part. however checks and tax forms require precisely positioned reporting abilities. I think that I will be better off using an external reporting application (crystal,access,FoxPro etc) to generate these reports. But if I do that then I'm sure I'll have to duplicate some of my coding efforts, since there is no way to achieve interop between these languages. Is there anyway to minimize the need to duplicate code? 4)Loosely Typed Variables. I fear it might be to simple in PHP to have a dollar amount converted to a string and become rounded or truncated, because php's loose type. This might be a smaller issue than I think? Is there a way to strictly enforce types/conversions so my numerics stay numerics? [Big application...Why would I want ot use PHP?] 1)The system can be developed on a laptop running xitami+win98 and then deployed on a high perfomance unix+apache machine without any adjustments :) 2)I won't be locked into vendor specific solutions (Sun EJB server/M$ .Net server) 3)I can teach the basics to new guys in about 1 week. 4)I just really like php, I've used it for 3 1/2 years and it's never failed me. But If there's a better framework for developing such an app, please let me know. Thanks a lot, Will -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php