Er zijn in wezen 3 manieren om te gaan:
Versie 1:"Old school":PHP-Gtk+ en bcompiler
- Ten eerste, als u dit nog niet hebt gedaan, moet u uw bedrijfslogica scheiden van uw presentatielaag (HTML, template-engines, ...) en databaselaag
- pas vervolgens uw databaselaag aan, zodat deze kan leven met een alternatieve DB (denk aan lokale SQlite) en synchronisatie kan uitvoeren wanneer deze weer online is
- Gebruik ten slotte PHP-Gtk+ om een nieuwe gebruikersinterface te maken en dit alles in te pakken met bcompiler
Versie 2:"Standaard":neem uw server mee
- Kijk naar Server2Go, WampOnCD en vrienden om een "dubbelklikbare webserver" te maken (Begin bij Z-WAMP )
- U moet uw DB-laag nog steeds aanpassen zoals in versie 1
Versie 3:"Web 2.x":applicatie verplaatsen van server naar browser
- Verplaats uw applicatielogica van de serverzijde (PHP) naar de clientzijde (JS)
- Maak van uw servergedeelte (PHP) alleen een gegevenstoegangs- of synchronisatielaag
- Gebruik de offline HTML5-functies om uw gegevenstoegang te vervangen door lokale gegevens als u offline bent en om opnieuw te synchroniseren als u online bent
Welke is het beste?
Dit hangt af van wat je hebt en wat je wilt. Als de meeste van uw bedrijfslogica in PHP zit, kan het verplaatsen ervan naar de browser onbetaalbaar zijn - houd er rekening mee dat dit ook een hele nieuwe klasse van beveiligingsnachtmerries genereert. Persoonlijk raad ik overzetten niet aan op deze manier, maar ik raad het wel aan voor nieuwe apps, als de backing-DB niet te groot is.
Als je ervoor kiest om je PHP-bedrijfslogica te behouden, dan is de beslissing tussen 1 en 2 vaak een kwestie van hoeveel UI je app heeft - als het maar een paar CRUD-formulieren zijn, 1. zou een goed idee kunnen zijn - het is zeker de meest draagbaar (in de zin van mee te nemen). Zo niet, ga dan met 2.