PHP将变量从函数传递给另一个函数

时间:2018-10-26 12:45:11

标签: php

我编写了以下代码块。第一个函数从INPUT数组生成一个随机key =元素。第二个应该是那个生成的元素并将其移动到NEW数组。当所有代码都在一个函数中时,该代码似乎可以工作。当这种结构时,它不起作用。

我通过声明变量“ global”来尝试。还尝试通过将变量作为函数中的参数传递,以及在单击按钮时调用它们时进行尝试。似乎没有任何作用。

我是新手,可能会错过一些显而易见的东西。

<?php

//load json files
$str = file_get_contents('input.json');
$input = json_decode($str, true); 
$str1 = file_get_contents('new.json');
$new = json_decode($str1, true); 

function generateNumber(){
    //generate random key = element from INPUT array    
    $rand_keys = array_rand($input, 1); 

    //save the key = element from INPUT array into a variable
    $removed = $input[$rand_keys];

    //display element value
    echo "<br/>------------Izbrana Stoinost -----------<br/>";
    echo $input[$rand_keys] . "\n";

}

function addToList(){
    //delete the element selected
    unset($input[$rand_keys]);

    //save element to NEW array
    array_push($new, $removed);

    //save to files
    file_put_contents("input.json",json_encode($input));
    file_put_contents("new.json",json_encode($new));
}  

?>

<form method="post">
  <input type="submit" name="get" id="get" value="get number" /><br/>
</form>

<form method="post">
  <input type="submit" name="add" id="add" value="add item" /><br/>
</form>

<?php

if(isset($_POST['get'])){
  generateNumber();
} 

if(isset($_POST['add'])){
  addToList();
}

?>

0 个答案:

没有答案