0
변수/배열에서 연산자를 실행하려고합니다.변수에서 연산자를 실행하십시오.
는 I 배열 이렇게 가지고 배열 내의
Array
(
[0] => Array
(
[0] => Array
(
[0] => 6
[1] => +
[2] => 2
[3] => +
[4] => 4
)
[1] => Array
(
[0] => 6
[1] => +
[2] => 2
[3] => -
[4] => 4
)
[2] => Array
(
[0] => 6
[1] => +
[2] => 2
[3] => *
[4] => 4
)
총 정수 연산자 및 동적이다. 저는 6 명의 연산자로 7 개의 정수를 가질 수 있습니다. 항상 형식입니다 [int + op + int + op +int ....]
나는 eval()
을 사용하려고 생각했습니다. 나는 평가가 악하다고 알고 사용을 권장하지는 않지만 공개적으로 사용하지는 않는다.
function getResults($array) {
$result = array();
foreach($array as $key => $subarray) {
$eval = '';
$result[$key] = array();
foreach($subarray as $subsubarray) {
$exec = '';
foreach($subsubarray as $data) {
$exec .= ' ' . $data;
}
ltrim($exec ,' ');
$result = eval("?>$exec");
echo $result;
}
}
}
내가 이것을 받기를 실행합니다 :
나는 코드의 평화와 붙어
8
4
14
: 나는 같은 결과를 얻을 것으로 기대하고있다
6 + 2 + 4
6 + 2 - 4
6 + 2 * 4
6 + 2/4
6 - 2 + 4
6 - 2 - 4
6 - 2 * 4
6 - 2/4
....
어떻게해야합니까? 떨어져 당신이 eval()
를 호출하는 방식에서
감사합니다. 나는 eval이 올바른 방법으로 사용하지 않을 때 위험하다는 것을 안다. –