3v4l.org

run code in 200+ PHP versions simultaneously
<?php $max_length_bcrypt = '5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1'; $max_length_bcrypt_plus_extra = '5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1ae3531ac1956aba81cb4f3d4947f9ca99794132989789acb13655645'; var_dump($max_length_bcrypt, $max_length_bcrypt_plus_extra); $hash_options = [ 'salt' => '31c990a8b44218cc483712', // some awful salt 'cost' => 6, // Let's not abuse this wonderful web service (3v4l.org) ]; $hash_1 = password_hash($max_length_bcrypt, PASSWORD_BCRYPT, $hash_options); $hash_2 = password_hash($max_length_bcrypt_plus_extra, PASSWORD_BCRYPT, $hash_options); var_dump($hash_1, $hash_2); var_dump($hash_1 === $hash_2);
based on 3cr4V

Shows result from various feature-branches currently under review from the php developers. Contact me to have additional branches featured.

Output for branch php-master+opcache
string(72) "5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1" string(128) "5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1ae3531ac1956aba81cb4f3d4947f9ca99794132989789acb13655645" Warning: password_hash(): The 'salt' option is no longer supported. The provided salt has been been ignored in /in/4lGu3 on line 13 Warning: password_hash(): The 'salt' option is no longer supported. The provided salt has been been ignored in /in/4lGu3 on line 14 string(60) "$2y$06$yLkHzNnVsOrLYAgzT8bqCOKoa7Z7ptVRk6Px0bKH/3te8aiAnR7jO" string(60) "$2y$06$AKZtIX6lea88aWP93/BZouOZd8e/aPJYLG.Pd/r3.xZ4glUHU0X2O" bool(false)
Output for branch php-master
string(72) "5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1" string(128) "5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1ae3531ac1956aba81cb4f3d4947f9ca99794132989789acb13655645" Warning: password_hash(): The 'salt' option is no longer supported. The provided salt has been been ignored in /in/4lGu3 on line 13 Warning: password_hash(): The 'salt' option is no longer supported. The provided salt has been been ignored in /in/4lGu3 on line 14 string(60) "$2y$06$.jt5hCHNckpQwtgEGtdK/OSuNHM/UGx.ffiAgh6xFTCRAZxK/pu2u" string(60) "$2y$06$w20pLiJIVIEkJ2YPyK3L3eM5VIN4c4mb6QM3b.CwDN6JRLWIQS1DS" bool(false)
Output for Typed properties v2
string(72) "5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1" string(128) "5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1ae3531ac1956aba81cb4f3d4947f9ca99794132989789acb13655645" Deprecated: password_hash(): Use of the 'salt' option to password_hash is deprecated in /in/4lGu3 on line 13 Deprecated: password_hash(): Use of the 'salt' option to password_hash is deprecated in /in/4lGu3 on line 14 string(60) "$2y$06$31c990a8b44218cc48371u6jbl0HyWWOMTefYIravFrFSkfzswSxW" string(60) "$2y$06$31c990a8b44218cc48371u6jbl0HyWWOMTefYIravFrFSkfzswSxW" bool(true)
Output for Arrow functions
string(72) "5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1" string(128) "5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1ae3531ac1956aba81cb4f3d4947f9ca99794132989789acb13655645" Deprecated: password_hash(): Use of the 'salt' option to password_hash is deprecated in /in/4lGu3 on line 13 Deprecated: password_hash(): Use of the 'salt' option to password_hash is deprecated in /in/4lGu3 on line 14 string(60) "$2y$06$31c990a8b44218cc48371u6jbl0HyWWOMTefYIravFrFSkfzswSxW" string(60) "$2y$06$31c990a8b44218cc48371u6jbl0HyWWOMTefYIravFrFSkfzswSxW" bool(true)
Output for Object typehint
string(72) "5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1" string(128) "5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1ae3531ac1956aba81cb4f3d4947f9ca99794132989789acb13655645" Deprecated: password_hash(): Use of the 'salt' option to password_hash is deprecated in /in/4lGu3 on line 13 Deprecated: password_hash(): Use of the 'salt' option to password_hash is deprecated in /in/4lGu3 on line 14 string(60) "$2y$06$31c990a8b44218cc48371u6jbl0HyWWOMTefYIravFrFSkfzswSxW" string(60) "$2y$06$31c990a8b44218cc48371u6jbl0HyWWOMTefYIravFrFSkfzswSxW" bool(true)
Output for Array change keys
string(72) "5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1" string(128) "5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1ae3531ac1956aba81cb4f3d4947f9ca99794132989789acb13655645" Deprecated: password_hash(): Use of the 'salt' option to password_hash is deprecated in /in/4lGu3 on line 13 Deprecated: password_hash(): Use of the 'salt' option to password_hash is deprecated in /in/4lGu3 on line 14 string(60) "$2y$06$31c990a8b44218cc48371u6jbl0HyWWOMTefYIravFrFSkfzswSxW" string(60) "$2y$06$31c990a8b44218cc48371u6jbl0HyWWOMTefYIravFrFSkfzswSxW" bool(true)
Output for Lexical anon
string(72) "5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1" string(128) "5a0a90c7caaa07139c8d1bfd848bda29571157799e2abbafe74065e827c01dd29d30f0f1ae3531ac1956aba81cb4f3d4947f9ca99794132989789acb13655645" string(60) "$2y$06$31c990a8b44218cc48371u6jbl0HyWWOMTefYIravFrFSkfzswSxW" string(60) "$2y$06$31c990a8b44218cc48371u6jbl0HyWWOMTefYIravFrFSkfzswSxW" bool(true)

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page