1

2つのforeachループがあり、両方とも同じ配列をループします。ただし、一方はstr_replaceが使用された後に配列をループし、もう一方はstr_replaceを使用しません。

私の問題; これらの2つのループを調整して、同じ配列を同時にループするようにするにはどうすればよいですか?

私の問題がそれほど説明的でない場合は申し訳ありません。

$contents = ftp_nlist($conn_id, $dir);
$unalteredcontents = ftp_nlist($conn_id, $dir);
foreach ($unalteredcontents as $fname2)
{
    if (($fname2 != '.') && ($fname2 != '..'))
    {
        $url = "http://mywebsite.com/folder/" . $userid . "/" . $fname2 . "";
        next($fname2);
    }
}
$contents = str_replace("-", '', $contents);
$contents = str_replace(".pdf", '', $contents);

foreach ($contents as $fname)
{
    if (($fname != '.') && ($fname != '..'))
    {
        $sql_select = "INSERT INTO `database`.`column` (`data`, `fileurl`) VALUES ('" . $fname . "', '" . $url . "') ";
    }
}
4

2 に答える 2

1

あなたの質問からははっきりしていません。しかし、私はそれを試してみます:

$unalteredcontents = ftp_nlist($conn_id, $dir);
foreach ($unalteredcontents as $fname2)
{
    if (($fname2 != '.') && ($fname2 != '..'))
    {
        $url = "http://mywebsite.com/folder/" . $userid . "/" . $fname2 . "";

        $contents = str_replace("-", '', $fname2);
        $contents = str_replace(".pdf", '', $contents);

        $sql_select = "INSERT INTO `database`.`column` (`data`, `fileurl`) VALUES ('" . $contents. "', '" . $url . "') ";
    }
}
于 2012-07-12T16:58:58.137 に答える
1

このようなもの:

$unalteredcontents = ftp_nlist($conn_id, $dir);
$contents = str_replace("-", '', $unalteredcontents);
$contents = str_replace(".pdf", '', $contents);

foreach ($contents as $key => $fname)
{
    if (($fname != '.') && ($fname != '..'))
    {
        $url = "http://mywebsite.com/folder/" . $userid . "/" . $unalteredcontents[$key];
        $sql_select = "INSERT INTO `database`.`column` (`data`, `fileurl`) VALUES ('" . $fname . "', '" . $url . "') ";
    }
}
于 2012-07-12T16:59:02.040 に答える