view vendor/nikic/php-parser/test/code/parser/expr/issetAndEmpty.test @ 13:5fb285c0d0e3

Update Drupal core to 8.4.7 via Composer. Security update; I *think* we've been lucky to get away with this so far, as we don't support self-registration which seems to be used by the so-called "drupalgeddon 2" attack that 8.4.5 was vulnerable to.
author Chris Cannam
date Mon, 23 Apr 2018 09:33:26 +0100
parents 4c8ae668cc8c
children
line wrap: on
line source
isset() and empty()
-----
<?php
isset($a);
isset($a, $b, $c);

empty($a);
empty(foo());
empty(array(1, 2, 3));
-----
array(
    0: Stmt_Expression(
        expr: Expr_Isset(
            vars: array(
                0: Expr_Variable(
                    name: a
                )
            )
        )
    )
    1: Stmt_Expression(
        expr: Expr_Isset(
            vars: array(
                0: Expr_Variable(
                    name: a
                )
                1: Expr_Variable(
                    name: b
                )
                2: Expr_Variable(
                    name: c
                )
            )
        )
    )
    2: Stmt_Expression(
        expr: Expr_Empty(
            expr: Expr_Variable(
                name: a
            )
        )
    )
    3: Stmt_Expression(
        expr: Expr_Empty(
            expr: Expr_FuncCall(
                name: Name(
                    parts: array(
                        0: foo
                    )
                )
                args: array(
                )
            )
        )
    )
    4: Stmt_Expression(
        expr: Expr_Empty(
            expr: Expr_Array(
                items: array(
                    0: Expr_ArrayItem(
                        key: null
                        value: Scalar_LNumber(
                            value: 1
                        )
                        byRef: false
                    )
                    1: Expr_ArrayItem(
                        key: null
                        value: Scalar_LNumber(
                            value: 2
                        )
                        byRef: false
                    )
                    2: Expr_ArrayItem(
                        key: null
                        value: Scalar_LNumber(
                            value: 3
                        )
                        byRef: false
                    )
                )
            )
        )
    )
)