-
Notifications
You must be signed in to change notification settings - Fork 63
Open
Description
Progpilot built from source, includes all recent commits and in default configuration. PHP 8.2.1
I see that ProgPilot don't know how to deal with ternary operator
.
It's syntax: (Conditional statement) ? (Statement_1) : (Statement_2);
Simplified example code, no result after analysis:
<?php
global $wpdb;
$tainted = isset($_POST['order_by']) ? $_POST['order_by'] : 'post_date';
$wpdb->get_row($tainted);
And there's exists it's shorthand variant, so called "Elvis" operator.
It's syntax: expression1 ?: expression2
Another example, with no results too:
<?php
global $wpdb;
$tainted = isset($_POST['order_by']) ?: 'post_date';
$wpdb->get_row($tainted);
The ternary operator is pretty common these days, I often see it in WordPress plugins. Although, it's shorthand variant I haven't seen in real code yet. Description about it in PHP Doc
How do we go about it? Is it possible to make ProgPilot be able to deal with ternary operator?
Metadata
Metadata
Assignees
Labels
No labels