Skip to content
Navigation Menu
Sign in
Appearance settings
Platform
AI CODE CREATION
GitHub Copilot
Write better code with AI
GitHub Copilot app
Direct agents from issue to merge
MCP Registry
Integrate external tools
DEVELOPER WORKFLOWS
Actions
Automate any workflow
Codespaces
Instant dev environments
Issues
Plan and track work
Code Review
Manage code changes
Code Quality
Enforce quality at merge
APPLICATION SECURITY
GitHub Advanced Security
Find and fix vulnerabilities
Code security
Secure your code as you build
Secret protection
Stop leaks before they start
EXPLORE
Why GitHub
Documentation
Blog
Changelog
Marketplace
View all features
Solutions
BY COMPANY SIZE
Enterprises
Small and medium teams
Startups
Nonprofits
BY USE CASE
App Modernization
DevSecOps
DevOps
CI/CD
View all use cases
BY INDUSTRY
Healthcare
Financial services
Manufacturing
Government
View all industries
View all solutions
Resources
EXPLORE BY TOPIC
AI
Software Development
DevOps
Security
View all topics
EXPLORE BY TYPE
Customer stories
Events & webinars
Ebooks & reports
Business insights
GitHub Skills
SUPPORT & SERVICES
Documentation
Customer support
Community forum
Trust center
Partners
View all resources
Open Source
COMMUNITY
GitHub Sponsors
Fund open source developers
PROGRAMS
Security Lab
Maintainer Community
Accelerator
GitHub Stars
Archive Program
REPOSITORIES
Topics
Trending
Collections
Enterprise
ENTERPRISE SOLUTIONS
Enterprise platform
AI-powered developer platform
AVAILABLE ADD-ONS
GitHub Advanced Security
Enterprise-grade security features
Copilot for Business
Enterprise-grade AI features
Premium Support
Enterprise-grade 24/7 support
Pricing
Search
/
Sign in
Sign up
Appearance settings
You signed in with another tab or window.
Reload
to refresh your session.
You signed out in another tab or window.
Reload
to refresh your session.
You switched accounts on another tab or window.
Reload
to refresh your session.
Dismiss alert
{{ message }}
peter17
/
phpstan-src
Public
forked from
phpstan/phpstan-src
Notifications
You must be signed in to change notification settings
Fork
0
Star
0
Code
Security and quality
0
Insights
Additional navigation options
Code
Security and quality
Insights
Commits
Breadcrumbs
History for
phpstan-src
src
Type
ArrayType.php
on
patch3
User selector
All users
All time
Commit history
Commits on Jul 31, 2026
`ArrayType::isCallable()`: ask `StringType::isSuperTypeOf()` about the item type instead of only `isString()`
Show description for af929ab
ondrejmirtes
committed
af929ab
View commit details
Copy full SHA for af929ab
View code at this point
Browse repository at this point
Commits on Jul 23, 2026
Introduce #[InstanceofDeprecated] attribute, derive ApiInstanceofTypeRule map from it
Show description for 386d499
ondrejmirtes
and
claude
committed
386d499
View commit details
Copy full SHA for 386d499
View code at this point
Browse repository at this point
Commits on Jun 9, 2026
Avoid redundant work in hot type-system and scope paths
Show description for a0d9720
ondrejmirtes
and
claude
committed
a0d9720
View commit details
Copy full SHA for a0d9720
View code at this point
Browse repository at this point
Commits on Jun 2, 2026
Build an (unsealed) array shape in ArrayType::intersectKeyArray() when the other operand has known sealedness
Show description for d260d4e
phpstan-bot
authored and
ondrejmirtes
committed
d260d4e
View commit details
Copy full SHA for d260d4e
View code at this point
Browse repository at this point
Commits on May 29, 2026
Narrow array key type when removing `HasOffsetType` via `ArrayType::tryRemove` (#5756)
Show description for f0b83c2
phpstan-bot
and
VincentLanglet
authored
f0b83c2
View commit details
Copy full SHA for f0b83c2
View code at this point
Browse repository at this point
Commits on May 26, 2026
Merge branch 2.1.x into 2.2.x
phpstan-bot
committed
44cc6f4
View commit details
Copy full SHA for 44cc6f4
View code at this point
Browse repository at this point
Cleanup ArrayType->tryRemove() (#5766)
staabm
authored
4e5f79b
View commit details
Copy full SHA for 4e5f79b
View code at this point
Browse repository at this point
Commits on May 21, 2026
Fix type inference for `reportUnsafeArrayStringKeyCasting: detect`
ondrejmirtes
committed
9db66d0
View commit details
Copy full SHA for 9db66d0
View code at this point
Browse repository at this point
Commits on May 19, 2026
Merge branch 2.1.x into 2.2.x
phpstan-bot
committed
3bd3b71
View commit details
Copy full SHA for 3bd3b71
View code at this point
Browse repository at this point
Extract `Type::truncateListToSize()` from `TypeSpecifier`
Show description for 852f99c
ondrejmirtes
and
claude
committed
852f99c
View commit details
Copy full SHA for 852f99c
View code at this point
Browse repository at this point
Commits on May 18, 2026
Merge branch 2.1.x into 2.2.x
phpstan-bot
committed
393a9a4
View commit details
Copy full SHA for 393a9a4
View code at this point
Browse repository at this point
Preserve `TemplateType` in `ArrayType` and `IntersectionType` array-mutating methods (#5698)
Show description for a1d48d8
3 people
authored
a1d48d8
View commit details
Copy full SHA for a1d48d8
View code at this point
Browse repository at this point
Merge branch 2.1.x into 2.2.x
phpstan-bot
committed
270bdfc
View commit details
Copy full SHA for 270bdfc
View code at this point
Browse repository at this point
Fix another shuffle() variant (#5696)
staabm
authored
4f0ab8e
View commit details
Copy full SHA for 4f0ab8e
View code at this point
Browse repository at this point
Commits on May 17, 2026
cs
staabm
committed
9eb9b09
View commit details
Copy full SHA for 9eb9b09
View code at this point
Browse repository at this point
Memoize ArrayType->isList() (#5680)
staabm
committed
e6ed7c4
View commit details
Copy full SHA for e6ed7c4
View code at this point
Browse repository at this point
Commits on May 16, 2026
Memoize ArrayType->isList() (#5680)
staabm
authored
c6fb24e
View commit details
Copy full SHA for c6fb24e
View code at this point
Browse repository at this point
Commits on May 7, 2026
Merge remote-tracking branch 'origin/2.1.x' into 2.2.x
ondrejmirtes
committed
a9ab57b
View commit details
Copy full SHA for a9ab57b
View code at this point
Browse repository at this point
Add Type::makeAllArrayKeysOptional() for preg_replace* array fast path
Show description for aa6f4af
ondrejmirtes
committed
aa6f4af
View commit details
Copy full SHA for aa6f4af
View code at this point
Browse repository at this point
Extract `Type::mapKeyType(callable)` and use it alongside `mapValueType` in NodeScopeResolver
Show description for 03bb78d
ondrejmirtes
committed
03bb78d
View commit details
Copy full SHA for 03bb78d
View code at this point
Browse repository at this point
Extract `Type::filterArrayRemovingFalsey()` for `array_filter` no-callback path
Show description for 4c69f86
ondrejmirtes
committed
4c69f86
View commit details
Copy full SHA for 4c69f86
View code at this point
Browse repository at this point
Extract `Type::changeKeyCaseArray(?int)` for `array_change_key_case`
Show description for e2140ec
ondrejmirtes
committed
e2140ec
View commit details
Copy full SHA for e2140ec
View code at this point
Browse repository at this point
Extract `Type::mapValueType(callable)` for "same keys, transformed values"
Show description for beb6fd8
ondrejmirtes
committed
beb6fd8
View commit details
Copy full SHA for beb6fd8
View code at this point
Browse repository at this point
Extract `Type::makeListMaybe()` for sort functions that drop list-ness
Show description for 952bd76
ondrejmirtes
committed
952bd76
View commit details
Copy full SHA for 952bd76
View code at this point
Browse repository at this point
Commits on Apr 27, 2026
Merge branch 2.1.x into 2.2.x
phpstan-bot
committed
25ba4d8
View commit details
Copy full SHA for 25ba4d8
View code at this point
Browse repository at this point
Preserve TemplateArrayType across offset writes and traversal
Show description for f63a13f
ondrejmirtes
and
claude
committed
f63a13f
View commit details
Copy full SHA for f63a13f
View code at this point
Browse repository at this point
Commits on Mar 29, 2026
reportUnsafeArrayStringKeyCasting - prevent implementation
ondrejmirtes
committed
3012e24
View commit details
Copy full SHA for 3012e24
View code at this point
Browse repository at this point
reportUnsafeArrayStringKeyCasting - detect implementation
ondrejmirtes
committed
bbf5afb
View commit details
Copy full SHA for bbf5afb
View code at this point
Browse repository at this point
Commits on Mar 8, 2026
Fix phpstan/phpstan#14037: `array_splice` resets int keys of the input array (#5139)
Show description for 869ddb3
phpstan-bot
and
VincentLanglet
authored
869ddb3
View commit details
Copy full SHA for 869ddb3
View code at this point
Browse repository at this point
Commits on Jan 7, 2026
Decrease usage of TypeTraverser
ondrejmirtes
committed
93b9c34
View commit details
Copy full SHA for 93b9c34
View code at this point
Browse repository at this point
Commits on Dec 29, 2025
Remove `TypeCombinator::intersect()` calls that are not necessary
ondrejmirtes
committed
f1f97c3
View commit details
Copy full SHA for f1f97c3
View code at this point
Browse repository at this point
Remove `TypeCombinator::union()` calls that are not necessary
ondrejmirtes
committed
12f2b23
View commit details
Copy full SHA for 12f2b23
View code at this point
Browse repository at this point
Commits on Nov 11, 2025
Revert "replace instanceof NeverType with isNever method"
Show description for a508d44
ondrejmirtes
committed
a508d44
View commit details
Copy full SHA for a508d44
View code at this point
Browse repository at this point
replace instanceof NeverType with isNever method
canvural
authored and
ondrejmirtes
committed
f0d21a7
View commit details
Copy full SHA for f0d21a7
View code at this point
Browse repository at this point
Commits on Oct 24, 2025
Fix null coalesce false positive for multi-dimensional array in loop
schlndh
authored
38a7dfd
View commit details
Copy full SHA for 38a7dfd
View code at this point
Browse repository at this point
Previous
Next
You can’t perform that action at this time.