Description
For any pieces of document, please look for the docs/ directory. You may also check up the compiled version
Totem alternatives and similar libraries
Based on the "Data Structure and Storage" category.
Alternatively, view Totem alternatives based on common mentions on social networks and blogs.
-
Serializer
Library for (de-)serializing data of any complexity (supports JSON, and XML) -
Porter
:lipstick: Durable and asynchronous data imports for consuming data at scale and publishing testable SDKs. -
Cake Collection
[READ-ONLY] Collection library in CakePHP. This repo is a split of the main code that can be found in https://github.com/cakephp/cakephp -
CRUDlex
CRUDlex is an easy to use CRUD generator for Symfony 4 and Silex 2 which is great for auto generated admin pages -
Zend Serializer
Another library for serialising and de-serialising data (ZF2). -
Array helper
Simple & secure helper to manipulate arrays in various ways
WorkOS - The modern identity platform for B2B SaaS
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Totem or a related project?
Popular Comparisons
README
Totem
\\\\////
|.)(.|
| || | Changeset calculator between two state of a data
\(__)/ Requires PHP 5.4 ; Compatible PHP 5.5, PHP 5.6, PHP 7 and HHVM
|-..-|
|o\/o|
.----\ /----.
/ / / |~~~~| \ \ \
/ / / /|::::|\ \ \ \
'-'-'-'-|::::|-'-'-'-'
(((^^)))
>>><<< Snapshots currently natively supported :
|||||| - Array
(o)(o) - Object
| /\ | - Collection
(====)
_(_,__)
(___\___)
Documentation
For any pieces of document, please look for the docs/ directory. You may also check up the compiled version
Installation
You have multiple ways to install Totem. If you are unsure what to do, go with the archive release.
Archive Release
- Download the most recent release from the release page
- Unpack the archive
- Move the files somewhere in your project
Development version
- Install Git
git clone git://github.com/Wisembly/Totem.git
Via Composer
- Install composer in your project:
curl -s http://getcomposer.org/installer | php
Create a
composer.json
file (or update it) in your project root:{ "require": { "wisembly/totem": "^1.4" } }
Install via composer :
php composer.phar install
Basic Usage
<?php
use Totem\Snapshot\ArraySnapshot;
$array = ['foo' => 'bar', 'baz' => 'qux'];
$snapshot = new ArraySnapshot($array); // Totem\Snapshot\ArraySnapshot
$array['foo'] = 'fubar';
$set = $snapshot->diff(new ArraySnapshot($array)); // Totem\Set
var_dump($set->hasChanged('foo'),
$set->getChange('foo')->getOld(),
$set->getChange('foo')->getNew(),
$set->hasChanged('bar'));
/*
* expected result :
*
* bool(true)
* string(3) "bar"
* string(5) "fubar"
* bool(false)
*/
Running Tests
- Install phpunit if not already installed
- Run phpunit on the project
*Note that all licence references and agreements mentioned in the Totem README section above
are relevant to that project's source code only.