PHP Classes

File: docs/CLEANUP_DUPLICATE_CONFIGS.md

Recommend this page to a friend!
  Packages of Adrian M   upMVC   docs/CLEANUP_DUPLICATE_CONFIGS.md   Download  
File: docs/CLEANUP_DUPLICATE_CONFIGS.md
Role: Auxiliary data
Content type: text/markdown
Description: Auxiliary data
Class: upMVC
Pure PHP web development without other frameworks
Author: By
Last change: Update of docs/CLEANUP_DUPLICATE_CONFIGS.md
Date: 2 months ago
Size: 3,774 bytes
 

Contents

Class file image Download

? CLEANUP COMPLETE: Removed Duplicate Configuration Keys

? What Was Done

Removed duplicate configuration keys and unified the configuration system.

? Changes Made

1. Updated .env file

BEFORE (Duplicated):

APP_URL=http://localhost
DOMAIN_NAME=http://localhost
APP_PATH=/upMVC
SITE_PATH=/upMVC

AFTER (Clean):

DOMAIN_NAME=http://localhost
SITE_PATH=/upMVC

Result: Removed APP_URL and APP_PATH duplicates ?

2. Updated ConfigManager.php

BEFORE:

self::$config['app'] = [
    'url' => Environment::get('APP_URL', 'https://yourdomain.com'),
    'path' => Environment::get('APP_PATH', ''),
    // ...
];

AFTER:

self::$config['app'] = [
    'url' => Environment::get('DOMAIN_NAME', 'https://yourdomain.com'),
    'path' => Environment::get('SITE_PATH', ''),
    // ...
];

Result: ConfigManager now reads from DOMAIN_NAME and SITE_PATH ?

3. Updated Environment.php Default Template

BEFORE:

APP_URL=https://yourdomain.com
APP_PATH=

AFTER:

DOMAIN_NAME=https://yourdomain.com
SITE_PATH=

Result: New .env files will use correct keys ?

? Configuration Flow (Now Unified)

.env file:
??? DOMAIN_NAME=http://localhost
?   ??> Config::getDomainName() ?
?   ??> ConfigManager::get('app.url') ?
?
??? SITE_PATH=/upMVC
    ??> Config::getSitePath() ?
    ??> ConfigManager::get('app.path') ?

Everyone reads from the same source now! ?

? Before vs After Comparison

| Aspect | Before | After | Improvement | |--------|--------|-------|-------------| | Configuration Keys | 4 (duplicated) | 2 (unified) | 50% reduction | | Confusion | Which to use? | Clear! | ????? | | Maintenance | Update 2 places | Update 1 place | Easier | | Consistency | Different systems use different keys | All systems use same keys | Perfect |

? Benefits

  1. ? No More Duplicates - One key per concept
  2. ? Unified Configuration - All systems read from same keys
  3. ? Less Confusion - Developers know which keys to use
  4. ? Easier Maintenance - Change once, affects everywhere
  5. ? Cleaner .env - Fewer lines, clearer purpose

? Configuration Reference

For Your Domain/URL:

DOMAIN_NAME=http://localhost
  • Used by: `Config::getDomainName()`
  • Used by: `ConfigManager::get('app.url')`
  • Purpose: Your application's domain URL

For Your Path:

SITE_PATH=/upMVC
  • Used by: `Config::getSitePath()`
  • Used by: `ConfigManager::get('app.path')`
  • Purpose: Your application's path (empty if root, /folder if subdirectory)

? Current .env Structure (Clean!)

# Application Settings
APP_ENV=development
APP_DEBUG=true
DOMAIN_NAME=http://localhost
SITE_PATH=/upMVC

# Database
DB_HOST=127.0.0.1
DB_NAME=upmvc
# ... etc

No more APP_URL or APP_PATH cluttering things up! ?

? Migration Notes

If anyone was using APP_URL or APP_PATH directly:

Old way:

Environment::get('APP_URL')   // ? No longer in .env
Environment::get('APP_PATH')  // ? No longer in .env

New way:

Environment::get('DOMAIN_NAME')  // ? Use this
Environment::get('SITE_PATH')    // ? Use this

// Or use the helper methods:
Config::getDomainName()  // ? Recommended
Config::getSitePath()    // ? Recommended

? Summary

Removed: APP_URL and APP_PATH (duplicates) Kept: DOMAIN_NAME and SITE_PATH (unified) Updated: ConfigManager to use unified keys Result: Cleaner, simpler, unified configuration! ?

Your configuration system is now professional-grade! ?