3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = [ '../fish/cod/123709-sdfgsdfgvsadfg.pdf', '../fish/cod/123797-sdfgsdfg-sdfg-sdfgs-dfg-sd.pdf', '../fish/cod/123998-sdfgsdf-gsdf-gsd-fg-sdfg-.pdf', '../fish/cod/123998-sdfgsdfg-sdf-gsdfg-sdf-g.pdf', '../fish/cod/123998-sdfg.pdf', '../fish/cod/123998-sdfgsdfgsfdg-sdfg.pdf', '../fish/cod/124089-sdfgsdfg-sdfg-sdfg-.pdf', '../fish/cod/124153-sdfgsdfgsdf-gsdfg.pdf', ]; $needles = [123709, 123797, 124089, 124153]; $lookup = array_flip($needles); var_export( array_filter( $array, fn($v) => !key_exists(strstr(basename($v), '-', true), $lookup), ) );

preferences:
25.29 ms | 409 KiB | 5 Q