pull/1/head
parent
f072f944b2
commit
a25fe02e09
6 changed files with 305 additions and 15 deletions
@ -0,0 +1,4 @@ |
||||
<?php |
||||
require __DIR__ . '/bootstrap.php'; |
||||
$r = \PhpAot\Php\Reflection::getFunctionParameter('array_push', 0); |
||||
var_dump($r->isPassedByReference()); |
||||
@ -0,0 +1,8 @@ |
||||
<?php |
||||
function main() |
||||
{ |
||||
$array = [1, 232, 333, 4, 35]; |
||||
sort($array); |
||||
var_dump($array); |
||||
} |
||||
|
||||
@ -0,0 +1,196 @@ |
||||
--TEST-- |
||||
Arrays - Indexed, Associative, and Multidimensional |
||||
--FILE-- |
||||
<?php |
||||
// Test indexed arrays |
||||
$indexed = [1, 2, 3, 4, 5]; |
||||
var_dump($indexed); |
||||
|
||||
// Test associative arrays |
||||
$assoc = [ |
||||
"name" => "John", |
||||
"age" => 30, |
||||
"city" => "New York" |
||||
]; |
||||
var_dump($assoc); |
||||
|
||||
// Test array access |
||||
$first_element = $indexed[0]; |
||||
var_dump($first_element); |
||||
|
||||
$name = $assoc["name"]; |
||||
var_dump($name); |
||||
|
||||
// Test array modification |
||||
$indexed[0] = 10; |
||||
var_dump($indexed[0]); |
||||
|
||||
$assoc["age"] = 35; |
||||
var_dump($assoc["age"]); |
||||
|
||||
// Test array functions |
||||
$numbers = [3, 1, 4, 1, 5, 9, 2, 6]; |
||||
sort($numbers); |
||||
var_dump($numbers); |
||||
|
||||
$assoc2 = [ |
||||
"product" => "Laptop", |
||||
"price" => 999.99, |
||||
"in_stock" => true |
||||
]; |
||||
|
||||
$keys = array_keys($assoc2); |
||||
var_dump($keys); |
||||
|
||||
$values = array_values($assoc2); |
||||
var_dump($values); |
||||
|
||||
// Test multidimensional array |
||||
$multi = [ |
||||
[1, 2, 3], |
||||
[4, 5, 6], |
||||
[7, 8, 9] |
||||
]; |
||||
var_dump($multi); |
||||
|
||||
// Access multidimensional array |
||||
$element = $multi[1][2]; // Should be 6 |
||||
var_dump($element); |
||||
|
||||
// Test array push |
||||
$stack = []; |
||||
array_push($stack, "first"); |
||||
array_push($stack, "second"); |
||||
array_push($stack, "third"); |
||||
var_dump($stack); |
||||
|
||||
// Test foreach loop with arrays |
||||
$output = []; |
||||
foreach ($indexed as $value) { |
||||
$output[] = $value * 2; |
||||
} |
||||
var_dump($output); |
||||
|
||||
$assoc_output = []; |
||||
foreach ($assoc as $key => $value) { |
||||
$assoc_output[$key] = "Value: " . $value; |
||||
} |
||||
var_dump($assoc_output); |
||||
?> |
||||
--EXPECT-- |
||||
array(5) { |
||||
[0]=> |
||||
int(1) |
||||
[1]=> |
||||
int(2) |
||||
[2]=> |
||||
int(3) |
||||
[3]=> |
||||
int(4) |
||||
[4]=> |
||||
int(5) |
||||
} |
||||
array(3) { |
||||
["name"]=> |
||||
string(4) "John" |
||||
["age"]=> |
||||
int(30) |
||||
["city"]=> |
||||
string(8) "New York" |
||||
} |
||||
int(1) |
||||
string(4) "John" |
||||
int(10) |
||||
int(35) |
||||
array(8) { |
||||
[0]=> |
||||
int(1) |
||||
[1]=> |
||||
int(1) |
||||
[2]=> |
||||
int(2) |
||||
[3]=> |
||||
int(3) |
||||
[4]=> |
||||
int(4) |
||||
[5]=> |
||||
int(5) |
||||
[6]=> |
||||
int(6) |
||||
[7]=> |
||||
int(9) |
||||
} |
||||
array(3) { |
||||
[0]=> |
||||
string(7) "product" |
||||
[1]=> |
||||
string(5) "price" |
||||
[2]=> |
||||
string(8) "in_stock" |
||||
} |
||||
array(3) { |
||||
[0]=> |
||||
string(6) "Laptop" |
||||
[1]=> |
||||
float(999.99) |
||||
[2]=> |
||||
bool(true) |
||||
} |
||||
array(3) { |
||||
[0]=> |
||||
array(3) { |
||||
[0]=> |
||||
int(1) |
||||
[1]=> |
||||
int(2) |
||||
[2]=> |
||||
int(3) |
||||
} |
||||
[1]=> |
||||
array(3) { |
||||
[0]=> |
||||
int(4) |
||||
[1]=> |
||||
int(5) |
||||
[2]=> |
||||
int(6) |
||||
} |
||||
[2]=> |
||||
array(3) { |
||||
[0]=> |
||||
int(7) |
||||
[1]=> |
||||
int(8) |
||||
[2]=> |
||||
int(9) |
||||
} |
||||
} |
||||
int(6) |
||||
array(3) { |
||||
[0]=> |
||||
string(5) "first" |
||||
[1]=> |
||||
string(6) "second" |
||||
[2]=> |
||||
string(5) "third" |
||||
} |
||||
array(5) { |
||||
[0]=> |
||||
int(20) |
||||
[1]=> |
||||
int(4) |
||||
[2]=> |
||||
int(6) |
||||
[3]=> |
||||
int(8) |
||||
[4]=> |
||||
int(10) |
||||
} |
||||
array(3) { |
||||
["name"]=> |
||||
string(11) "Value: John" |
||||
["age"]=> |
||||
string(9) "Value: 35" |
||||
["city"]=> |
||||
string(15) "Value: New York" |
||||
} |
||||
@ -0,0 +1,48 @@ |
||||
--TEST-- |
||||
Basic Variables and Data Types |
||||
--FILE-- |
||||
<?php |
||||
// Test scalar types |
||||
$int_var = 42; |
||||
$float_var = 3.14; |
||||
$bool_var = true; |
||||
$string_var = "Hello, World!"; |
||||
|
||||
var_dump($int_var); |
||||
var_dump($float_var); |
||||
var_dump($bool_var); |
||||
var_dump($string_var); |
||||
|
||||
// Test variable assignment and operations |
||||
$a = 10; |
||||
$b = 3; |
||||
$sum = $a + $b; |
||||
$diff = $a - $b; |
||||
$product = $a * $b; |
||||
$quotient = $a / (float) $b; |
||||
$remainder = $a % $b; |
||||
|
||||
var_dump($sum); |
||||
var_dump($diff); |
||||
var_dump($product); |
||||
var_dump($quotient); |
||||
var_dump($remainder); |
||||
|
||||
// Test string operations |
||||
$str1 = "Hello"; |
||||
$str2 = "World"; |
||||
$concat = $str1 . " " . $str2; |
||||
|
||||
var_dump($concat); |
||||
?> |
||||
--EXPECT-- |
||||
int(42) |
||||
float(3.14) |
||||
bool(true) |
||||
string(13) "Hello, World!" |
||||
int(13) |
||||
int(7) |
||||
int(30) |
||||
float(3.3333333333333335) |
||||
int(1) |
||||
string(11) "Hello World" |
||||
Loading…
Reference in new issue