1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- <?php
- if (!function_exists('value_from_rs')) {
- function value_from_rs($rs, $field, $checks, $condition = "all") {
- $result = '-';
- switch ($condition) {
- case "all":
- foreach ($rs as $record) {
- $failed = false;
- foreach ($checks as $check) {
- if($check[1] === '=') {
- if(!($record->{$check[0]} == $check[2])) {
- $failed = true;
- break;
- }
- }
- else if($check[1] === '!=') {
- if(!($record->{$check[0]} != $check[2])) {
- $failed = true;
- break;
- }
- }
- }
- if(!$failed) {
- $result = $record->$field;
- break;
- }
- }
- break;
- case "any":
- foreach ($rs as $record) {
- foreach ($checks as $check) {
- if($check[1] === '=') {
- if($record->{$check[0]} == $check[2]) {
- $result = $record->$field;
- break;
- }
- }
- else if($check[1] === '!=') {
- if($record->{$check[0]} != $check[2]) {
- $result = $record->$field;
- break;
- }
- }
- }
- }
- break;
- case "none":
- foreach ($rs as $record) {
- $failed = false;
- foreach ($checks as $check) {
- if($check[1] === '=') {
- if($record->{$check[0]} == $check[2]) {
- $failed = true;
- break;
- }
- }
- else if($check[1] === '!=') {
- if($record->{$check[0]} != $check[2]) {
- $failed = true;
- break;
- }
- }
- }
- if(!$failed) {
- $result = $record->$field;
- break;
- }
- }
- break;
- }
- return $result;
- }
- }
|