Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Php Dot Array Laravel Package

pharaonic/php-dot-array

Pharaonic PHP Dot Array gives you clean dot-notation access to nested arrays: get, set, has, and forget values like config('app.name') for any array. Lightweight, framework-agnostic, and easy to drop into Laravel or plain PHP projects.

Deep Wiki
Context7

Product Decisions This Supports

  • Feature delivery for nested data workflows: Speeds up work on settings screens, dynamic forms, tenant/theme configuration, feature flags, import/export field mapping, and JSON/API payload transformations where product behavior depends on deeply nested keys.
  • Build vs. buy: Lean toward adopt for small, non-Laravel PHP services or package-level utilities where a zero-dependency dot-notation helper avoids custom array traversal code. Lean toward build on existing Laravel primitives inside a Laravel app, since Arr::get/set/has/forget and data_get already cover most needs.
  • Roadmap fit: Treat this as an enabler, not a differentiator. It can reduce incidental complexity in configuration-heavy features but should not drive roadmap prioritization or architecture.
  • Use cases to evaluate: Multi-tenant config overrides, CMS field definitions, theme/options arrays, environment-style config merging, rule/path-based updates to nested payloads, and internal admin tooling that manipulates sparse nested data.
  • Risk-adjusted decision: With ~10 stars, an unknown repository, and a low package score, adoption should be scoped to low-blast-radius utilities. Do not make it a platform dependency without an internal wrapper and exit plan.

When to Consider This Package

Consider it when:

  • You are working in plain PHP or a non-Laravel codebase and want consistent dot-notation and wildcard access without pulling in illuminate/support.
  • You need a small, MIT-licensed utility with a focused API for reading, writing, checking, and deleting nested array values.
  • Your team repeatedly writes custom recursive array helpers and would benefit from a standard, testable abstraction.
  • Wildcard behavior for nested paths is a genuine product requirement — for example, updating all matching keys in a configuration tree or form payload.
  • You can wrap the package behind an internal service or helper so it can be replaced if maintenance stalls.

Look elsewhere when:

  • You are in a Laravel application — use native Arr and data_get helpers first; adopting this package likely duplicates framework behavior.
  • You need schema validation, typed DTOs, collection pipelines, or complex data transformation — use Laravel validation, DTO libraries, or dedicated transformation tools.
  • The feature is performance-critical at large array scale; benchmark before standardizing.
  • Long-term support, security review, or community visibility is required. Ten stars and an unknown repository are adoption risks.
  • The package’s wildcard semantics diverge from your team’s expectations or from Laravel conventions; inconsistency costs more than the helper saves.

How to Pitch It (Stakeholders)

To executives: This is a low-cost, MIT-licensed utility that reduces custom code for reading and updating nested configuration and payload data. It can speed up small, configuration-heavy features, but it is not strategic and should not become a platform dependency. Recommendation: allow scoped use in non-Laravel or utility contexts, and avoid duplicating capabilities already built into Laravel.

To engineering: The package provides dot-notation and wildcard access for nested arrays — a narrow, understandable capability. Before adopting, compare it directly with Laravel’s Arr::get/set/has/forget and data_get; in a Laravel codebase it is likely redundant. If used, wrap it behind an internal array-access helper, confirm PHP version support and test coverage, and document wildcard behavior. Given low community visibility, treat it as a replaceable implementation detail, not a foundational library.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource
noith/settings
kda/laravel-package