I am giving up my bed for one night.

My Sleep Out helps youth facing homelessness find safe shelter and loving care at Covenant House. That care includes essential services like education, job training, medical care, mental health and substance use counseling, and legal aid — everything they need to build independent, sustainable futures.

By supporting my Sleep Out, you are supporting the dreams of young people overcoming homelessness.

Together, we are working towards a future where every young person has a safe place to sleep.

Thank you.

php.ini

The php.ini files in php-wasm work exactly the same as in normal php. See the PHP docs for the full list of ini settings.

[php]
date.timezone=UTC
tidy.clean_output=1
expose_php=0

Setting up php.ini at Runtime

You can pass in the ini property to the constructor to add lines to /php.ini:

const php = new PhpWeb({ini: `
    date.timezone=${Intl.DateTimeFormat().resolvedOptions().timeZone}
    tidy.clean_output=1
    expose_php=0
`});

FS Locations

If present, The /config/php.ini and /preload/php.ini files will also be loaded. You can learn how to populate the filesystem in Loading Files.

Loading Extensions by PHP Version

PHP allows for ${ENVIRONMENT_VARIABLES} to be used inside ini files. The PHP_VERSION environment variable is provided to allow loading of the extension compatible with the currently running version of PHP.

[php]
extension=php${PHP_VERSION}-phar.so

Remember to correctly escape the $ if you’re supplying the INI from Javascript with ՝backtics՝.

const php = new PhpWeb({ini: `
    extension=php\${PHP_VERSION}-phar.so
    date.timezone=${Intl.DateTimeFormat().resolvedOptions().timeZone}
`});

CGI Configuration

When running in CGI mode, php will look for a php.ini file in the document root directory, and load it along with the files listed above.