Server IP : 192.158.238.246 / Your IP : 216.73.216.129 Web Server : LiteSpeed System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64 User : jenniferflocom ( 1321) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/7779/cwd/plugins/woocommerce/src/Admin/RemoteSpecs/RuleProcessors/ |
Upload File : |
<?php /** * Compare two operands using the specified operation. */ namespace Automattic\WooCommerce\Admin\RemoteSpecs\RuleProcessors; defined( 'ABSPATH' ) || exit; /** * Compare two operands using the specified operation. */ class ComparisonOperation { /** * Compare two operands using the specified operation. * * @param object $left_operand The left hand operand. * @param object $right_operand The right hand operand -- 'value' from the rule definition. * @param string $operation The operation used to compare the operands. */ public static function compare( $left_operand, $right_operand, $operation ) { switch ( $operation ) { case '=': return $left_operand === $right_operand; case '<': return $left_operand < $right_operand; case '<=': return $left_operand <= $right_operand; case '>': return $left_operand > $right_operand; case '>=': return $left_operand >= $right_operand; case '!=': return $left_operand !== $right_operand; case 'contains': if ( is_array( $left_operand ) && is_string( $right_operand ) ) { return in_array( $right_operand, $left_operand, true ); } if ( is_string( $right_operand ) && is_string( $left_operand ) ) { return strpos( $right_operand, $left_operand ) !== false; } break; case '!contains': if ( is_array( $left_operand ) && is_string( $right_operand ) ) { return ! in_array( $right_operand, $left_operand, true ); } if ( is_string( $right_operand ) && is_string( $left_operand ) ) { return strpos( $right_operand, $left_operand ) === false; } break; case 'in': if ( is_array( $right_operand ) && is_string( $left_operand ) ) { return in_array( $left_operand, $right_operand, true ); } if ( is_string( $left_operand ) && is_string( $right_operand ) ) { return strpos( $left_operand, $right_operand ) !== false; } break; case '!in': if ( is_array( $right_operand ) && is_string( $left_operand ) ) { return ! in_array( $left_operand, $right_operand, true ); } if ( is_string( $left_operand ) && is_string( $right_operand ) ) { return strpos( $left_operand, $right_operand ) === false; } break; case 'range': if ( ! is_array( $right_operand ) || count( $right_operand ) !== 2 ) { return false; } return $left_operand >= $right_operand[0] && $left_operand <= $right_operand[1]; } return false; } }