Welcome to Software Development on Codidact!
Will you help us build our independent community of developers helping developers? We're small and trying to grow. We welcome questions about all aspects of software development, from design to code to QA and more. Got questions? Got answers? Got code you'd like someone to review? Please join us.
How to store credentials for PHP scripts on a Windows machine?
I have a number of command line PHP scripts that are either run by a user or by Windows Task Scheduler.
These scripts use DB and API credentials and I am wondering if there is a better way of storing said credentials than configuration files outside of the Git repository?
1 answer
Solution 1: Honestly, it is a best practice used by current frameworks (symfony, laravel) to use an .env file that you will have into the .gitignore. On the otherside, you will commit a .env.dist or .env.example file with the basic template of your file.
Exanple of a DB .env.dist file:
DATABASE_NAME=MyDb
DATABASE_PASSWORD=MyPassword
DATABASE_URL=127.0.0.1
DATABASE_PORT=3306
Solution 2: Another way of doing would be to store into the system itself environment variables, this is often used when you're deploying onto a production server and you don't wan't to share an .env file over the internet. So they will be manually input on the host machine.
After that you can access those variables with getenv('your_var') or using the alias $_SERVER['your_var']
or $_ENV['your_var']
1 comment thread