chevere / var-support
A chevere var-support package
Installs: 17 859
Dependents: 3
Suggesters: 0
Security: 0
Stars: 1
Watchers: 0
Forks: 0
Open Issues: 2
pkg:composer/chevere/var-support
Requires
- php: ^8.1
- chevere/message: ^1.0.0
- symfony/var-exporter: ^6.1|^7.0
Requires (Dev)
- phpstan/phpstan: ^1.9
- phpunit/phpunit: ^9.5
- symplify/easy-coding-standard: ^11.1
README
Summary
Extra tools for handling variables.
Installing
VarSupport is available through Packagist and the repository source is at chevere/var-support.
composer require chevere/var-support
ObjectVariable
The ObjectVariable component is in charge of handling an object variable.
Creating ObjectVariable
use Chevere\VarSupport\ObjectVariable; $object = new ObjectVariable($var); $var = $object->variable();
Assert clonable
Use assertClonable to assert if the object variable can be cloned.
$boolean = $object->assertClonable();
StorableVariable
The StorableVariable component is in charge of handling a variable that can be stored (state).
A storable variable for Chevere is any PHP variable that can be stored as a string representation. All variable types can be stored with the exception of type resource.
Creating StorableVariable
use Chevere\VarSupport\StorableVariable; $storable = new StorableVariable($var); $var = $storable->variable();
Export
The toExport method exports the variable, this return value should be used when creating a file return.
$export = $storable->toExport(); file_put_contents( 'file-return.php', '<?php return '.$export.';' );
Serialize
The toSerialize method provides a shortcut for serialize($var).
$string = $storable->toSerialize();
Documentation
Documentation is available at chevere.org.
License
Copyright 2023 Rodolfo Berrios A.
Chevere is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.