PHPackages                             wittiws/quipxml - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Parsing &amp; Serialization](/categories/parsing)
4. /
5. wittiws/quipxml

Abandoned → [brainite/quipxml](/?search=brainite%2Fquipxml)Library[Parsing &amp; Serialization](/categories/parsing)

wittiws/quipxml
===============

Enhanced SimpleXml-based toolkit

v0.2.3(7y ago)31731[2 issues](https://github.com/stackpr/quipxml/issues)1MITPHPPHP &gt;=5.4CI passing

Since Aug 17Pushed 9mo ago3 watchersCompare

[ Source](https://github.com/stackpr/quipxml)[ Packagist](https://packagist.org/packages/wittiws/quipxml)[ Docs](https://github.com/wittiws/quipxml)[ RSS](/packages/wittiws-quipxml/feed)WikiDiscussions master Synced 3d ago

READMEChangelog (10)DependenciesVersions (5)Used By (1)

QuipXml
=======

[](#quipxml)

[![CI](https://github.com/brainite/quipxml/actions/workflows/ci.yml/badge.svg)](https://github.com/brainite/quipxml/actions/workflows/ci.yml)

QuipXml is chainable PHP objects for manipulating XML. Unlike other libraries that attempt to replicate jQuery syntax throughout, Quip attempts to provide lightweight extensions to SimpleXML to facilitate cleaner code without imposing JavaScript conventions on a PHP project. The end result is fast and easy to use.

Basic Usage
-----------

[](#basic-usage)

```
// The 'load' factory method aligns with SimpleXml constructor arguments.
$quip = Quip::load($xml_path, 0, TRUE);
$quip = Quip::load($xml_string);

// jQuery method names are used where appropriate.
$html = $quip->html();

// jQuery method names are adjusted when there is a keyword conflict.
$quip->xparent();

// While jQuery syntax is wonderful, you also get PHP advantages:
//  1. xpath
//  2. access children like properties
//  3. use foreach loops
$ul = $quip->xpath("//ul")->eq(0);
$ul->li->after('New bullet.');
foreach ($quip->xpath("//li")->eq(1) as $li) {
}

// For advanced operations, just like in jQuery, you can access the DOMNode for a given XML node.
$el = $ul->dom();
```

HHVM Limitations for SimpleXML
------------------------------

[](#hhvm-limitations-for-simplexml)

Effective 2014-03-24 (confirmed on travis-ci), you cannot use the magic self-reference on SimpleXml elements. This code will not work:

```
$sxml = simplexml_load_file('example.xml');
$sxml->original[0] = $expected;
```

Update: This was corrected on HHVM 3 (confirmed on travis-ci on 2014-05-30).

###  Health Score

29

—

LowBetter than 60% of packages

Maintenance28

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 99.4% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~240 days

Total

4

Last Release

2834d ago

PHP version history (2 changes)v0.2.0PHP &gt;=5.3.3

v0.2.2PHP &gt;=5.4

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/50087543?v=4)[wittiws](/maintainers/wittiws)[@wittiws](https://github.com/wittiws)

---

Top Contributors

[![stackpr](https://avatars.githubusercontent.com/u/1994413?v=4)](https://github.com/stackpr "stackpr (155 commits)")[![zaporylie](https://avatars.githubusercontent.com/u/1690685?v=4)](https://github.com/zaporylie "zaporylie (1 commits)")

---

Tags

xml

### Embed Badge

![Health badge](/badges/wittiws-quipxml/health.svg)

```
[![Health](https://phpackages.com/badges/wittiws-quipxml/health.svg)](https://phpackages.com/packages/wittiws-quipxml)
```

###  Alternatives

[masterminds/html5

An HTML5 parser and serializer.

1.8k242.8M229](/packages/masterminds-html5)[jms/serializer

Library for (de-)serializing data of any complexity; supports XML, and JSON.

2.3k135.8M851](/packages/jms-serializer)[jms/metadata

Class/method/property metadata management in PHP

1.8k152.8M88](/packages/jms-metadata)[jms/serializer-bundle

Allows you to easily serialize, and deserialize data of any complexity

1.8k89.3M627](/packages/jms-serializer-bundle)[hassankhan/config

Lightweight configuration file loader that supports PHP, INI, XML, JSON, and YAML files

97513.5M170](/packages/hassankhan-config)[sabre/xml

sabre/xml is an XML library that you may not hate.

52832.2M131](/packages/sabre-xml)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
