PHPackages                             waghbhaskar/data-canvas - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. waghbhaskar/data-canvas

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

waghbhaskar/data-canvas
=======================

A PHP class for mapping dataset from various sources

01PHP

Since Aug 17Pushed 9mo agoCompare

[ Source](https://github.com/waghbhaskar/data-canvas)[ Packagist](https://packagist.org/packages/waghbhaskar/data-canvas)[ RSS](/packages/waghbhaskar-data-canvas/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

🗂️ DataCanvas / DataSetMapper
=============================

[](#️-datacanvas--datasetmapper)

[![Packagist Version](https://camo.githubusercontent.com/61324003ca09d679e1cfda2b74c3357bbc16eaf000150b7b1feb07b72ac29ffa/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f77616768626861736b61722f646174612d63616e7661732e7376673f7374796c653d666c617426636f6c6f723d626c7565)](https://packagist.org/packages/waghbhaskar/data-canvas)
[![Downloads](https://camo.githubusercontent.com/a95ab5c1e4172c5fd709e9e2562be1d2e7fb4360354e218c18d81119384441f6/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f77616768626861736b61722f646174612d63616e7661732e7376673f636f6c6f723d627269676874677265656e)](https://packagist.org/packages/waghbhaskar/data-canvas)
[![PHP Version](https://camo.githubusercontent.com/2e2971225ff50663e2b40b17a4116ffd2bdf4fe11cf765c6223791b2d54eb1ff/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f77616768626861736b61722f646174612d63616e7661732e7376673f636f6c6f723d707572706c65)](https://www.php.net/releases/)
[![License](https://camo.githubusercontent.com/4f3175ba05f1a266c246b9faaec5b4d3bb24f4a19504797783f2fe80c784277c/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f4461746143616e7661732f446174615365744d61707065723f636f6c6f723d6f72616e6765)](LICENSE)

**DataSetMapper** is a **robust PHP 8.1+ library** that helps you **standardize input datasets** from multiple sources (CSV, JSON, TXT, Arrays) into a **consistent, client-specific format**.

---

✨ Key Features
--------------

[](#-key-features)

- 📥 Flexible Data Loading → Load data from `.csv`, `.json` (file/string), delimited `.txt`, and native PHP arrays.
- 🗺️ Customizable Mapping Schema → Use simple associative arrays to map source → target fields.
- 🛡️ Resilient Error Handling → Handles file not found, invalid JSON, malformed TXT, etc.
- ⚡ Modern PHP 8.1+ Support → Strict typing, readonly, attributes, and latest PHP features.
- 🧩 Null-safe Missing Fields → Missing fields become `null` with warnings instead of breaking execution.

---

📦 Installation
--------------

[](#-installation)

```
composer require waghbhaskar/data-canvas
```

---

🚀 Quick Start
-------------

[](#-quick-start)

1️⃣ Define Mapping Schema
2️⃣ Instantiate Mapper
3️⃣ Load &amp; Map CSV Data

(See GitHub repo for full examples with CSV, JSON, TXT, and PHP Arrays)

---

🌐 Web Demo
----------

[](#-web-demo)

Use the included `index.php` + `output.php`.
Run local server → Upload file → Choose type → Map fields → Process Data.

---

🤝 Contributing
--------------

[](#-contributing)

We welcome contributions! 🚀

- Open an issue
- Fork &amp; submit PRs

---

📜 License
---------

[](#-license)

This project is licensed under the MIT License.

###  Health Score

15

—

LowBetter than 3% of packages

Maintenance41

Moderate activity, may be stable

Popularity1

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity13

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/30db11d7601d56b2e5906d76a42cdf2d2a39dce7731d902b994dd6cd553e2942?d=identicon)[waghbhaskar](/maintainers/waghbhaskar)

---

Top Contributors

[![waghbhaskar](https://avatars.githubusercontent.com/u/42625372?v=4)](https://github.com/waghbhaskar "waghbhaskar (4 commits)")

### Embed Badge

![Health badge](/badges/waghbhaskar-data-canvas/health.svg)

```
[![Health](https://phpackages.com/badges/waghbhaskar-data-canvas/health.svg)](https://phpackages.com/packages/waghbhaskar-data-canvas)
```

###  Alternatives

[icharle/wxtool

微信小程序登录、带参小程序码生成

231.6k](/packages/icharle-wxtool)

PHPackages © 2026

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