diff options
Diffstat (limited to 'Examples/php/reference/runme.php')
-rw-r--r-- | Examples/php/reference/runme.php | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/Examples/php/reference/runme.php b/Examples/php/reference/runme.php new file mode 100644 index 0000000..5d264ee --- /dev/null +++ b/Examples/php/reference/runme.php @@ -0,0 +1,49 @@ +<?php + +# This file illustrates the manipulation of C++ references in PHP. + +require "example.php"; + +# ----- Object creation ----- + +print "Creating some objects:\n"; +$a = new Vector(3, 4, 5); +$b = new Vector(10, 11, 12); + +print " Created a: {$a->as_string()}\n"; +print " Created b: {$b->as_string()}\n"; + +# ----- Call an overloaded operator ----- + +# This calls the wrapper we placed around +# +# operator+(const Vector &a, const Vector &) +# +# It returns a new allocated object. + +print "Adding a+b\n"; +$c = example::addv($a, $b); +print " a+b ={$c->as_string()}\n"; + +# ----- Create a vector array ----- + +print "Creating an array of vectors\n"; +$va = new VectorArray(10); + +print " va: size={$va->size()}\n"; + +# ----- Set some values in the array ----- + +# These operators copy the value of $a and $b to the vector array +$va->set(0, $a); +$va->set(1, $b); +$va->set(2, addv($a, $b)); + +# Get some values from the array + +print "Getting some array values\n"; +for ($i = 0; $i < 5; $i++) { + print " va[$i] = {$va->get($i)->as_string()}\n"; +} + +?> |