If $dbkey consisted only of numbers (0-9), PHP converts it to an
integer when using it as array key, and then returns it as an integer
when iterating over the array. This is normally fine, but TitleValue
does strict type checking.
Follow-up to
682116760198a7420a809e0b9966ecdc63f1c67d.
Bug: T136615
Change-Id: I894800c3f5aec0c2d0c23f8adfa1b840495f3b16
// The remaining links in $data are bad links, register them as such
foreach ( $remaining as $ns => $dbkeys ) {
foreach ( $dbkeys as $dbkey => $unused ) {
- $title = new TitleValue( (int)$ns, $dbkey );
+ $title = new TitleValue( (int)$ns, (string)$dbkey );
$cache->addBadLinkObj( $title );
$pdbk = $titleFormatter->getPrefixedDBkey( $title );
$ids[$pdbk] = 0;