## Comments

    // Single line comment
    /* Multi-line
    comment */
    # Shell-like comment

## Strings

    'foo \'bar\' baz'
    "foo \"bar\" baz"
    "a string # containing an hash"
    $foo = <<<FOO
        Heredoc strings are supported too!
    FOO;
    $bar = <<<'BAR'
        And also Nowdoc strings
    BAR;

## Variables

    $some_var = 5;
    $otherVar = "Some text";
    $null = null;
    $false = false;

## Functions

    $json = json_encode($my_object);
    $array1 = array("a" => "green", "red", "blue", "red");
    $array2 = array("b" => "green", "yellow", "red");
    $result = array_diff($array1, $array2);

## Constants

    define('MAXSIZE', 42);
    echo MAXSIZE;
    json_decode($json, false, 512, JSON_BIGINT_AS_STRING)

## PHP 5.3+ support

    namespace my\name;
    $c = new \my\name\MyClass;
    $arr = [1,2,3];
    trait ezcReflectionReturnInfo {
        function getReturnType() { /*1*/ }
        function getReturnDescription() { /*2*/ }
    }
    function gen_one_to_three() {
        for ($i = 1; $i <= 3; $i++) {
            // Note that $i is preserved between yields.
            yield $i;
        }
    }

## PHP embedded in HTML

    <div class="<?php echo $a ? 'foo' : 'bar'; ?>">
    <?php if($var < 42) {
        echo "Something";
    } else {
        echo "Something else";
    } ?>
    </div>

## String interpolation

    $str = "This is $great!";
    $foobar = "Another example: {${$foo->bar()}}";
    $a = <<<FOO
        Hello $world!
    FOO;
    $b = <<<"FOOBAR"
        Interpolation inside Heredoc strings {$obj->values[3]->name}
    FOOBAR;