Thanks to visit codestin.com
Credit goes to github.com

Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: symfony/dotenv
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v6.4.37
Choose a base ref
...
head repository: symfony/dotenv
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v6.4.39
Choose a head ref
  • 1 commit
  • 2 files changed
  • 1 contributor

Commits on May 6, 2026

  1. [Dotenv] Don't truncate OS env vars containing $ when $_ENV is unpopu…

    …lated
    
    PR #63955 introduced `loadedRawVars` tracking in `doLoad()`. Its check
    `!isset($_ENV[$name])` was meant to protect host-provided environment
    variables from being processed by `resolveLoadedVars()`. However, with
    PHP's default `variables_order = "GPCS"` (no `E`), OS-provided env vars
    are placed in $_SERVER but not in $_ENV when PHP starts.
    
    As a result, an externally provided value like `abc$def` was added to
    `loadedRawVars`, and then `resolveLoadedVars()` interpreted the literal
    `$` as a variable reference and truncated the value to `abc`.
    
    Mirror the existing behavior of `populate()` which already considers
    $_SERVER as a source of pre-existing env vars, so externally provided
    values are correctly recognized regardless of `variables_order`.
    HMAZonderland committed May 6, 2026
    Configuration menu
    Copy the full SHA
    e25b004 View commit details
    Browse the repository at this point in the history
Loading