--FILE--
<?php
-$s = "123";
-$s1 = "234";
+$s = b"123";
+$s1 = b"234";
var_dump(bin2hex($s ^ $s1));
-$s = "1235";
-$s1 = "234";
+$s = b"1235";
+$s1 = b"234";
var_dump(bin2hex($s ^ $s1));
-$s = "some";
-$s1 = "test";
+$s = b"some";
+$s1 = b"test";
var_dump(bin2hex($s ^ $s1));
-$s = "some long";
-$s1 = "test";
+$s = b"some long";
+$s1 = b"test";
var_dump(bin2hex($s ^ $s1));
-$s = "some";
-$s1 = "test long";
+$s = b"some";
+$s1 = b"test long";
var_dump(bin2hex($s ^ $s1));
-$s = "some";
-$s ^= "test long";
+$s = b"some";
+$s ^= b"test long";
var_dump(bin2hex($s));
echo "Done\n";
string(8) "070a1e11"
string(8) "070a1e11"
Done
+--UEXPECTF--
+unicode(6) "030107"
+unicode(6) "030107"
+unicode(8) "070a1e11"
+unicode(8) "070a1e11"
+unicode(8) "070a1e11"
+unicode(8) "070a1e11"
+Done
Z_STRLEN_P(result) = result_len;
return SUCCESS;
}
- if (Z_TYPE_P(op1) == IS_UNICODE || Z_TYPE_P(op2) == IS_UNICODE) {
+ if (Z_TYPE_P(op1) == IS_UNICODE && Z_TYPE_P(op2) == IS_UNICODE) {
zend_error(E_ERROR, "Unsupported operand types");
return FAILURE;
}
return SUCCESS;
}
- if (Z_TYPE_P(op1) == IS_UNICODE || Z_TYPE_P(op2) == IS_UNICODE) {
+ if (Z_TYPE_P(op1) == IS_UNICODE && Z_TYPE_P(op2) == IS_UNICODE) {
zend_error(E_ERROR, "Unsupported operand types");
return FAILURE;
}
return SUCCESS;
}
- if (Z_TYPE_P(op1) == IS_UNICODE || Z_TYPE_P(op2) == IS_UNICODE) {
+ if (Z_TYPE_P(op1) == IS_UNICODE && Z_TYPE_P(op2) == IS_UNICODE) {
zend_error(E_ERROR, "Unsupported operand types");
return FAILURE;
}
{
zval op1_copy, op2_copy;
- if (Z_TYPE_P(op1) == IS_UNICODE || Z_TYPE_P(op2) == IS_UNICODE) {
- zend_error(E_ERROR, "Unsupported operand types");
- return FAILURE;
- }
-
zendi_convert_to_long(op1, op1_copy, result);
zendi_convert_to_long(op2, op2_copy, result);
Z_LVAL_P(result) = Z_LVAL_P(op1) << Z_LVAL_P(op2);
{
zval op1_copy, op2_copy;
- if (Z_TYPE_P(op1) == IS_UNICODE || Z_TYPE_P(op2) == IS_UNICODE) {
- zend_error(E_ERROR, "Unsupported operand types");
- return FAILURE;
- }
-
zendi_convert_to_long(op1, op1_copy, result);
zendi_convert_to_long(op2, op2_copy, result);
Z_LVAL_P(result) = Z_LVAL_P(op1) >> Z_LVAL_P(op2);