如何将数组作为参数传递给函数

时间:2012-11-11 15:47:45

标签: php arrays

我创建了这个代码,我定义了一个数组fliepath,我在其中存储了一些文件的位置。

     include 'last_file.php'; // Include the function last_file
     $last_file = last_file();  // assign to the function a variable and call the  function last_file
    // Connect to the database
     include('connect_thesis.php');

    // Defining an array, which has the three paths to the three different gps receivers
    $file_path[0] = "/Applications/MAMP/htdocs/php_test/check/".$last_file[0];
    //echo $file_path[0]; echo "<br>";
    $file_path[1] = "/Applications/MAMP/htdocs/php_test/check2/".$last_file[1];
    //echo $file_path[1]; echo "<br>";
    $file_path[2] = "/Applications/MAMP/htdocs/php_test/check3/".$last_file[2];
    //echo $file_path[2]; echo "<br>";

然后我创建了一个名为insert()的函数,我想把它作为输入$ file_path [0]:

     function insert($file_path){

     $fh = fopen($file_path,'r') or die ("Could not open:".mysql_error()).......;

我从主脚本调用函数:

         insert($file_path[0]);

我是编程新手,我确信在某个地方我遗漏了一些基本的东西! 问题是该功能没有运行!!! 你能帮助我吗? 感谢名单 d。

我认为我不能正确地发挥对功能的价值。原因我没有任何错误!

2 个答案:

答案 0 :(得分:1)

需要注意几点:

您只使用索引0调用insert,考虑使用foreach并在数组中的每个项目上调用该函数。

insert() - &gt;我们缺少部分实现,但如果文件存在,则不应该出错。请记住,您需要关闭打开的文件。

或死亡 - &gt;它看起来像你从其他地方复制粘贴的代码... mysql_error()对你目前处理文件没有多大帮助。考虑将其更改为

$fh = fopen($file_path,'r') or die ("Could not open:".$file_path)

你应该慷慨地处理错误,而不是使用“die”

答案 1 :(得分:0)

我认为你需要这个:

function insert($file_path) {
    foreach ($file_path as $file) {
        //Your code here
    }
}