Skip to content

PHP extensions #8

@thekid

Description

@thekid

Currently, we compile with the following extensions enabled:

  • Core
  • bcmath
  • ctype
  • date
  • fileinfo
  • filter
  • hash
  • iconv
  • json
  • openssl
  • pcre
  • Phar
  • posix
  • Reflection
  • session
  • SPL
  • standard
  • tokenizer

Looking at https://bref.sh/docs/environment/php.html#extensions-installed-and-enabled and from scanning through use cases, the following could be interesting:

  • gd, exif - image processing
  • mbstring - prerequisite for exif anyways
  • sodium - for crypto
  • zlib - if we want to create ZIP files, HTTP compression - see PHP extensions #8 (comment)
  • sqlite3 - for temporary data storage
  • libxml, dom, xml, xmlreader, xmlwriter - for processing XML and HTML - see Enable XML extensions #11

The following extensions don't seem to make sense for an AWS lambda enviromment:

  • pcntl - for parallelization, you would most probably just invoke other lambdas and/or use a message queue
  • readline - this is for humans sitting in front of a terminal, not for the serverside
  • curl, ftp, mysqli / mysqlnd - the XP Framework has it's own protocol implementations
  • sockets - the standard socket library works just as well for (most - or almost all?) cases
  • opcache - we leave our code running after compiling once, caching doesn't improve this any more
  • SimpleXML - covered by XP Framework's XML APIs - used by AWS SDK, see PHP extensions #8 (comment)

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions