PHP 自定義比較演算法

2021-09-06 12:58:55 字數 1552 閱讀 7588

很多時候,程式都是直接寫好邏輯運算,提供給使用者的是乙個值,然後後台去比較;但是有時會提供一種類似計算器一樣的互動方式的時候,php只能讀懂使用者的輸入來進行比較了~

最近的乙個專案涉及到乙個由使用者自定義輸入比較方法,後台取相應資料,自動比較,輸出結果。比如:

使用者輸入:   time>9&&time<15

後台執行:  讀懂輸入,獲取資料,進行比較,輸出比較的結果

看了需求,完全就是模擬php比較運算與資料庫操作啊,幹吧~~

<?php

$datas = json_decode(file_get_contents(indexjson),true);//

global var

// print_r($da);

$condition = 'size>102400&&dir%/var/www/html/wordpress/wp-admin';

print_r(compare($condition

));

//getdata for compare

function compare($condition

)else

for($k = 0 ; $k

< count($datas['name']) ; $k++)

}if ($flag

)

}return

$result;//

return keys array in datas

}

function getcompare($key, $condition

)

$value = explode($operator[0], $condition);//

x>12 => 12($value)

switch ($operator[0])

else

break

;

default:

return

false

;

break

; }

}

注:$data陣列格式為  

---------- php debugger ----------

array

([name] => array

([0] => a

[1] => b

[2] => c

[3] => d

[4] => e

[5] => f

)[dir] => array

([0] => f

[1] => e

[2] => d

[3] => c

[4] => b

[5] => a

)[time] => array

([0] => 1

[1] => 2

[2] => 3

[3] => 4

[4] => 5

[5] => 6

)

php加密自定義版權,PHP自定義加密方式

這篇文章主要介紹了php自定義加密方式,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下 簡單編碼函式 與php decode函式對應 function php encode str ord 函式返回字串的首個字元的 ascii 值。chr 函式從指定的 ascii 值返回字元。簡單解碼...

map自定義比較函式

from template class alloc alloc 第乙個引數key是關鍵字型別 第二個引數t是值型別 第三個引數compare是比較函式 仿函式 第四個引數是記憶體配置物件 map中的關鍵字,起碼必須有 這個比較操作符。我們知道,int,float,enum,size t等等簡單關鍵字...

自定義比較函式mystrcmp

實現乙個兩字串比較的函式 mystrcmp 不允許呼叫標準庫中的字串處理函式。當兩字串相等時,該函式返回 0 當第乙個字串大於第二字串時,該函式返回 1 當第乙個字串小於第二字串時,該函式返回 1。輸入格式 兩行,每行乙個字串,每個字串的長度不超過30。輸出格式 根據兩字串的大小,對應輸出 0,1,...