28 lines
		
	
	
		
			637 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			637 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| namespace Core\Driver\SQL\Expression;
 | |
| 
 | |
| use Core\Driver\SQL\SQL;
 | |
| 
 | |
| abstract class AbstractFunction extends Expression {
 | |
| 
 | |
|   private string $functionName;
 | |
|   private mixed $value;
 | |
| 
 | |
|   public function __construct(string $functionName, mixed $value) {
 | |
|     $this->functionName = $functionName;
 | |
|     $this->value = $value;
 | |
|   }
 | |
| 
 | |
|   public function getExpression(SQL $sql, array &$params): string {
 | |
|     return $this->functionName . "(" . $sql->addValue($this->getValue(), $params) . ")";
 | |
|   }
 | |
| 
 | |
|   public function getFunctionName(): string {
 | |
|     return $this->functionName;
 | |
|   }
 | |
| 
 | |
|   public function getValue(): mixed {
 | |
|     return $this->value;
 | |
|   }
 | |
| } |