ตรวจสอบความถูกต้องของมรดก, Segwit, Segwit ดั้งเดิม (bech32) และที่อยู่ Bitcoin ของ taproot
PHP | เวอร์ชันแพ็คเกจ |
---|---|
7.x | เวอร์ชัน 1.0 |
8.x | เวอร์ชัน 2.0+ |
โปรดทราบว่าที่อยู่ taproot ได้รับการสนับสนุนตั้งแต่เวอร์ชัน 2.1 ของแพ็คเกจนี้
ติดตั้งแพ็คเกจผ่านผู้แต่ง:
composer require kielabokkie/bitcoin-address-validator
ขั้นแรกให้คุณสร้างอินสแตนซ์ของคลาสตัวตรวจสอบ:
$ addressValidator = new Kielabokkie Bitcoin AddressValidator ;
ตรวจสอบที่อยู่ประเภทใดก็ได้ (ดั้งเดิม, segwit, segwit ดั้งเดิม และ taproot):
$ addressValidator -> isValid ( ' 1AGNa15ZQXAZUgFiqJ2i7Z2DPU2J6hW62i ' );
ที่อยู่เดิม (P2PKH):
$ addressValidator -> isPayToPublicKeyHash ( ' 1AGNa15ZQXAZUgFiqJ2i7Z2DPU2J6hW62i ' );
ที่อยู่เซกวิท (P2SH):
$ addressValidator -> isPayToScriptHash ( ' 3ALJH9Y951VCGcVZYAdpA3KchoP9McEj1G ' );
ที่อยู่ segwit ดั้งเดิม (bech32):
$ addressValidator -> isBech32 ( ' bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4 ' );
ที่อยู่ Taproot (P2TR):
$ addressValidator -> isPayToTaproot ( ' bc1pveaamy78cq5hvl74zmfw52fxyjun3lh7lgt44j03ygx02zyk8lesgk06f6 ' );
ตามค่าเริ่มต้น เครื่องมือตรวจสอบจะส่งเฉพาะที่อยู่ mainnet ว่าถูกต้องเท่านั้น หากคุณต้องการตรวจสอบทั้งที่อยู่ mainnet และ testnet คุณสามารถใช้วิธีผูกมัด:
// Both valid
$ addressValidator -> includeTestnet ()-> isBech32 ( ' bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4 ' );
$ addressValidator -> includeTestnet ()-> isBech32 ( ' tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx ' );
หากคุณต้องการตรวจสอบเฉพาะที่อยู่ testnet คุณสามารถทำได้ดังนี้:
// Invalid
$ addressValidator -> onlyTestnet ()-> isBech32 ( ' bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4 ' );
// Valid
$ addressValidator -> onlyTestnet ()-> isBech32 ( ' tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx ' );
แพ็คเกจนี้ได้รับการทดสอบกับข้อมูลการทดสอบของ repo bitcoin/bitcoin อย่างเป็นทางการ หากคุณพบที่อยู่ที่ไม่ผ่านการตรวจสอบอย่างถูกต้อง โปรดเปิดประเด็นให้
รันการทดสอบด้วย:
composer test
แพ็คเกจนี้อิงตามแพ็คเกจต่อไปนี้และใช้โค้ดจำนวนมาก:
เครดิตทั้งหมดไปที่ผู้เขียนต้นฉบับ
แพ็คเกจนี้ทำเงินให้คุณได้มากมาย ประหยัดเวลา หรือแค่จุดประกายความสุข?
การบริจาคจะได้รับการชื่นชมมาก: 32vtWJSomccxQ6y1tgSwSHXN5PChpdYy27