tysonandre / var_representation_polyfill
Polyfill for var_representation: convert a variable to a string in a way that fixes the shortcomings of var_export
Installs: 4 014 392
Dependents: 2
Suggesters: 0
Security: 0
Stars: 14
Watchers: 3
Forks: 1
Open Issues: 0
Requires
- php: ^7.2.0|^8.0.0
- ext-tokenizer: *
Requires (Dev)
- phan/phan: ^5.4.1
- phpunit/phpunit: ^8.5.0
Suggests
- ext-var_representation: For best performance
Provides
This package is auto-updated.
Last update: 2024-10-29 06:41:40 UTC
README
var_representation_polyfill is a polyfill for https://pecl.php.net/var_representation
This provides a polyfill for the function var_representation(mixed $value, int $flags = 0): string
, which converts a
variable to a string in a way that fixes the shortcomings of var_export()
See the var_representation PECL documentation for more details
Installation
composer require tysonandre/var_representation_polyfill
Usage
// uses short arrays, and omits array keys if array_is_list() would be true php > echo var_representation(['a','b']); [ 'a', 'b', ] // can dump everything on one line. php > echo var_representation(['a', 'b', 'c'], VAR_REPRESENTATION_SINGLE_LINE); ['a', 'b', 'c'] php > echo var_representation("uses double quotes: \$\"'\\\n"); "uses double quotes: \$\"'\\\n" // Can disable the escaping of control characters as of polyfill version 0.1.0 // (e.g. if the return value needs to be escaped again) php > echo var_representation("has\nnewlines", VAR_REPRESENTATION_UNESCAPED); 'has newlines' php > echo json_encode("uses single quotes:\0\r\n\$\"'\\"); "uses single quotes:\u0000\r\n$\"'\\" php > echo json_encode(var_representation("uses single quotes:\0\r\n\$\"'\\", VAR_REPRESENTATION_UNESCAPED)); "'uses single quotes:\u0000\r\n$\"\\'\\\\'"