Weave Code
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

Zend Stdlib Laravel Package

zendframework/zend-stdlib

Zend\Stdlib provides general-purpose utility components for PHP, including array helpers, messaging utilities, string wrappers, and more. Note: this repository was abandoned on 2019-12-31 and moved to laminas/laminas-stdlib.

View on GitHub
Deep Wiki
Context7

Getting Started

This package provides foundational utilities — particularly array helpers, message components, and string wrappers — that were historically used across Zend Framework (now Laminas) projects. Despite being archived (2019) and replaced by laminas/laminas-stdlib, many legacy Laravel apps (or older PHP codebases) may still depend on it via transitive dependencies. Begin by identifying usage in composer.lock or code (use Zend\Stdlib\*). For new work, always use laminas/laminas-stdlib instead — the namespace and API are identical, only the package changed.

Implementation Patterns

In Laravel, you rarely use zend-stdlib directly, but may leverage its components indirectly:

  • Array utilities: Zend\Stdlib\ArrayUtils (e.g., ArrayUtils::merge(), ArrayUtils::overwrite()) can appear in legacy service configuration or plugin code. Prefer Laravel’s Arr::* helpers instead.
  • Message systems: Classes like Zend\Stdlib\Message or Zend\Stdlib\Response may surface in old hybrid-Zend integrations (e.g., when routing or dispatching between Symfony/Laravel and legacyZF2 modules).
  • String wrappers: Zend\Stdlib\StringStack is obsolete; use Laravel’s Str:: helpers or native PHP functions.

Use laminas/laminas-stdlib in modern apps when migrating ZF2/3 code or consuming Laminas components. Laravel doesn’t rely on it natively, so integration typically occurs during migration or in customZF-to-Laravel bridges.

Gotchas and Tips

  • Deprecation & Fork Risk: The package is archived and unmaintained. Avoid new direct usage; treat it as a migration artifact. Confirm whether laminas/laminas-stdlib is a drop-in replacement in your lockfile.
  • Namespace collisions: Ensure no autoloader conflict between old Zend\ and new Laminas\ namespaces — both may coexist if explicitly required, but this is error-prone. Prefer full migration to Laminas packages.
  • PHP version: The latest zend-stdlib v3 requires PHP ≥5.5, but modern Laravel projects require 8.1+, so compatibility isn’t the issue — abandonment is.
  • Migration tip: If you see ArrayUtils::merge() used in config files, replace with Laravel’s config()->set() and array_merge() or Arr::multiply() where appropriate. For custom hydrator usage (removed in v3), switch to laminas/laminas-hydrator or PHP 8 attributes.
  • ConsoleHelper: Avoid it entirely — use Symfony’s OutputInterface (via Laravel’s Output component) or Artisan’s built-in output handling.
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.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport