This project does not seem to handle request data directly as such no vulnerable execution paths were found.
include
, or for example
via PHP's auto-loading mechanism.
These results are based on our legacy PHP analysis, consider migrating to our new PHP analysis engine instead. Learn more
1 | <?php |
||
2 | |||
3 | namespace BenTools\Where\DeleteQuery; |
||
4 | |||
5 | final class DeleteQueryStringifier |
||
6 | { |
||
7 | |||
8 | /** |
||
9 | * @param DeleteQueryBuilder $query |
||
10 | * @return array |
||
11 | */ |
||
12 | private static function initBuild(DeleteQueryBuilder $query): array |
||
13 | { |
||
14 | return \array_merge([$query->mainKeyword], $query->flags); |
||
0 ignored issues
–
show
The property
$flags is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
15 | } |
||
16 | |||
17 | /** |
||
18 | * @param DeleteQueryBuilder $query |
||
19 | * @param array $parts |
||
20 | */ |
||
21 | private static function buildTables(DeleteQueryBuilder $query, array &$parts) |
||
22 | { |
||
23 | if ([] !== $query->tables && null !== $query->tables) { |
||
0 ignored issues
–
show
The property
$tables is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
24 | $parts = \array_merge($parts, [implode(', ', $query->tables)]); |
||
0 ignored issues
–
show
The property
$tables is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
25 | } |
||
26 | } |
||
27 | |||
28 | /** |
||
29 | * @param DeleteQueryBuilder $query |
||
30 | * @param array $parts |
||
31 | */ |
||
32 | private static function buildFrom(DeleteQueryBuilder $query, array &$parts) |
||
33 | { |
||
34 | if (null !== $query->from) { |
||
0 ignored issues
–
show
The property
$from is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
35 | $parts = \array_merge($parts, ['FROM', $query->from]); |
||
0 ignored issues
–
show
The property
$from is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
36 | } |
||
37 | } |
||
38 | |||
39 | /** |
||
40 | * @param DeleteQueryBuilder $query |
||
41 | * @param array $parts |
||
42 | */ |
||
43 | private static function buildPartitions(DeleteQueryBuilder $query, array &$parts) |
||
44 | { |
||
45 | if ([] !== $query->partitions) { |
||
0 ignored issues
–
show
The property
$partitions is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
46 | $parts[] = 'PARTITION'; |
||
47 | $parts[] = sprintf('(%s)', \implode(', ', $query->partitions)); |
||
0 ignored issues
–
show
The property
$partitions is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
48 | } |
||
49 | } |
||
50 | |||
51 | /** |
||
52 | * @param DeleteQueryBuilder $query |
||
53 | * @param array $parts |
||
54 | */ |
||
55 | private static function buildJoins(DeleteQueryBuilder $query, array &$parts) |
||
56 | { |
||
57 | if ([] !== $query->joins) { |
||
0 ignored issues
–
show
The property
$joins is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
58 | foreach ($query->joins as $table => $join) { |
||
0 ignored issues
–
show
The property
$joins is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
59 | $str = \sprintf('%s %s', $join['t'], $table); |
||
60 | if (null !== $join['c']) { |
||
61 | $str .= \sprintf(' ON %s', $join['c']); |
||
62 | } |
||
63 | $parts[] = $str; |
||
64 | } |
||
65 | } |
||
66 | } |
||
67 | |||
68 | /** |
||
69 | * @param DeleteQueryBuilder $query |
||
70 | * @param array $parts |
||
71 | */ |
||
72 | private static function buildWhere(DeleteQueryBuilder $query, array &$parts) |
||
73 | { |
||
74 | if (null !== $query->where) { |
||
0 ignored issues
–
show
The property
$where is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
75 | $parts = \array_merge($parts, ['WHERE', (string) $query->where]); |
||
0 ignored issues
–
show
The property
$where is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
76 | } |
||
77 | } |
||
78 | |||
79 | |||
80 | /** |
||
81 | * @param DeleteQueryBuilder $query |
||
82 | * @param array $parts |
||
83 | */ |
||
84 | private static function buildOrderBy(DeleteQueryBuilder $query, array &$parts) |
||
85 | { |
||
86 | if ([] !== $query->orderBy) { |
||
0 ignored issues
–
show
The property
$orderBy is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
87 | $parts = \array_merge($parts, ['ORDER BY'], [\implode(', ', $query->orderBy)]); |
||
0 ignored issues
–
show
The property
$orderBy is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
88 | } |
||
89 | } |
||
90 | |||
91 | /** |
||
92 | * @param DeleteQueryBuilder $query |
||
93 | * @param array $parts |
||
94 | */ |
||
95 | private static function buildLimit(DeleteQueryBuilder $query, array &$parts) |
||
96 | { |
||
97 | if (null !== $query->limit) { |
||
0 ignored issues
–
show
The property
$limit is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
98 | $parts[] = \sprintf('LIMIT %d', $query->limit); |
||
0 ignored issues
–
show
The property
$limit is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
99 | } |
||
100 | } |
||
101 | |||
102 | /** |
||
103 | * @param DeleteQueryBuilder $query |
||
104 | * @return string |
||
105 | */ |
||
106 | public static function stringify(DeleteQueryBuilder $query): string |
||
107 | { |
||
108 | $parts = self::initBuild($query); |
||
109 | self::buildTables($query, $parts); |
||
110 | self::buildFrom($query, $parts); |
||
111 | self::buildPartitions($query, $parts); |
||
112 | self::buildJoins($query, $parts); |
||
113 | self::buildWhere($query, $parts); |
||
114 | self::buildOrderBy($query, $parts); |
||
115 | self::buildLimit($query, $parts); |
||
116 | return \implode(' ', $parts) . $query->end; |
||
0 ignored issues
–
show
The property
$end is declared private in BenTools\Where\DeleteQuery\DeleteQueryBuilder . Since you implemented __get() , maybe consider adding a @property or @property-read annotation. This makes it easier for IDEs to provide auto-completion.
Since your code implements the magic setter <?php
/**
* @property int $x
* @property int $y
* @property string $text
*/
class MyLabel
{
private $properties;
private $allowedProperties = array('x', 'y', 'text');
public function __get($name)
{
if (isset($properties[$name]) && in_array($name, $this->allowedProperties)) {
return $properties[$name];
} else {
return null;
}
}
public function __set($name, $value)
{
if (in_array($name, $this->allowedProperties)) {
$properties[$name] = $value;
} else {
throw new \LogicException("Property $name is not defined.");
}
}
}
Since the property has write access only, you can use the @property-write annotation instead. Of course, you may also just have mistyped another name, in which case you should fix the error. See also the PhpDoc documentation for @property. ![]() |
|||
117 | } |
||
118 | } |
||
119 |
Since your code implements the magic setter
_set
, this function will be called for any write access on an undefined variable. You can add the@property
annotation to your class or interface to document the existence of this variable.Since the property has write access only, you can use the @property-write annotation instead.
Of course, you may also just have mistyped another name, in which case you should fix the error.
See also the PhpDoc documentation for @property.