2007-12-14 16:21:33 +00:00
|
|
|
--TEST--
|
|
|
|
Test token_get_all() function : usage variations - with different arithmetic operators
|
|
|
|
--FILE--
|
|
|
|
<?php
|
|
|
|
/* Prototype : array token_get_all(string $source)
|
|
|
|
* Description: splits the given source into an array of PHP languange tokens
|
|
|
|
* Source code: ext/tokenizer/tokenizer.c
|
|
|
|
*/
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Passing 'source' argument with different arithmetic operators to test them for token
|
|
|
|
* Arithmetic operators: +, -, *, /, % are not listed as specific operator tokens,
|
|
|
|
* so they are expected to return string - T_STRING
|
|
|
|
*/
|
|
|
|
|
|
|
|
echo "*** Testing token_get_all() : 'source' string with different arithmetic operators ***\n";
|
|
|
|
|
|
|
|
// arithmetic operators - '+', '-', '*', '/', '%'
|
|
|
|
$source = array (
|
|
|
|
'<?php $a = 1 + 2; ?>',
|
|
|
|
'<?php $b = $b - 2; ?>',
|
|
|
|
'<?php $c = $a * $b; ?>',
|
|
|
|
'<?php $a = $b % 2; ?>'
|
|
|
|
);
|
|
|
|
for($count = 0; $count < count($source); $count++) {
|
|
|
|
echo "-- Iteration ".($count + 1)." --\n";
|
|
|
|
var_dump( token_get_all($source[$count]));
|
|
|
|
}
|
|
|
|
echo "Done"
|
|
|
|
?>
|
|
|
|
--EXPECTF--
|
|
|
|
*** Testing token_get_all() : 'source' string with different arithmetic operators ***
|
|
|
|
-- Iteration 1 --
|
|
|
|
array(13) {
|
|
|
|
[0]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(368)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(6) "<?php "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[1]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
|
|
|
int(309)
|
|
|
|
[1]=>
|
|
|
|
string(2) "$a"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[2]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[3]=>
|
|
|
|
string(1) "="
|
|
|
|
[4]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[5]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
|
|
|
int(305)
|
|
|
|
[1]=>
|
|
|
|
string(1) "1"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[6]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[7]=>
|
|
|
|
string(1) "+"
|
|
|
|
[8]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[9]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
|
|
|
int(305)
|
|
|
|
[1]=>
|
|
|
|
string(1) "2"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[10]=>
|
|
|
|
string(1) ";"
|
|
|
|
[11]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[12]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(370)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(2) "?>"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
-- Iteration 2 --
|
|
|
|
array(13) {
|
|
|
|
[0]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(368)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(6) "<?php "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[1]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
|
|
|
int(309)
|
|
|
|
[1]=>
|
|
|
|
string(2) "$b"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[2]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[3]=>
|
|
|
|
string(1) "="
|
|
|
|
[4]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[5]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
|
|
|
int(309)
|
|
|
|
[1]=>
|
|
|
|
string(2) "$b"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[6]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[7]=>
|
|
|
|
string(1) "-"
|
|
|
|
[8]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[9]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
|
|
|
int(305)
|
|
|
|
[1]=>
|
|
|
|
string(1) "2"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[10]=>
|
|
|
|
string(1) ";"
|
|
|
|
[11]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[12]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(370)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(2) "?>"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
-- Iteration 3 --
|
|
|
|
array(13) {
|
|
|
|
[0]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(368)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(6) "<?php "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[1]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
|
|
|
int(309)
|
|
|
|
[1]=>
|
|
|
|
string(2) "$c"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[2]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[3]=>
|
|
|
|
string(1) "="
|
|
|
|
[4]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[5]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
|
|
|
int(309)
|
|
|
|
[1]=>
|
|
|
|
string(2) "$a"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[6]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[7]=>
|
|
|
|
string(1) "*"
|
|
|
|
[8]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[9]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
|
|
|
int(309)
|
|
|
|
[1]=>
|
|
|
|
string(2) "$b"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[10]=>
|
|
|
|
string(1) ";"
|
|
|
|
[11]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[12]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(370)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(2) "?>"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
-- Iteration 4 --
|
|
|
|
array(13) {
|
|
|
|
[0]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(368)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(6) "<?php "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[1]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
|
|
|
int(309)
|
|
|
|
[1]=>
|
|
|
|
string(2) "$a"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[2]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[3]=>
|
|
|
|
string(1) "="
|
|
|
|
[4]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[5]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
|
|
|
int(309)
|
|
|
|
[1]=>
|
|
|
|
string(2) "$b"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[6]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[7]=>
|
|
|
|
string(1) "%"
|
|
|
|
[8]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[9]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
|
|
|
int(305)
|
|
|
|
[1]=>
|
|
|
|
string(1) "2"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[10]=>
|
|
|
|
string(1) ";"
|
|
|
|
[11]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(371)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(1) " "
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
[12]=>
|
|
|
|
array(3) {
|
|
|
|
[0]=>
|
2008-03-30 21:48:24 +00:00
|
|
|
int(370)
|
2007-12-14 16:21:33 +00:00
|
|
|
[1]=>
|
|
|
|
string(2) "?>"
|
|
|
|
[2]=>
|
|
|
|
int(1)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
Done
|