<?phpnamespaceFaker\Provider\en_US;classPaymentextends\Faker\Provider\Payment{publicfunctionbankAccountNumber(){// Length between 5 and 17, biased towards center$length=self::numberBetween(0,3)+self::numberBetween(0,3)+self::numberBetween(0,3)+self::numberBetween(0,3)+5;returnself::numerify(str_repeat('#',$length));}publicfunctionbankRoutingNumber(){$district=self::numberBetween(1,12);$type=self::randomElement(array(0,0,0,0,20,20,60));$clearingCenter=self::randomDigitNotNull();$state=self::randomDigit();$institution=self::randomNumber(4,true);$result=sprintf('%02d%01d%01d%04d',$district+$type,$clearingCenter,$state,$institution);return$result.self::calculateRoutingNumberChecksum($result);}publicstaticfunctioncalculateRoutingNumberChecksum($routing){return(7*($routing[0]+$routing[3]+$routing[6])+3*($routing[1]+$routing[4]+$routing[7])+9*($routing[2]+$routing[5]))%10;}}