0

我正在努力获得正确的语法来解析数组中的值以与 foreach 循环一起使用。我有一个数组:

$contacts_array

其中包含我需要搜索的一个或多个名称。数组如下所示:

Array
(
    [0] => PR1010

    [1] => PR1086
)   

如果我要使用已知数量的名称手动生成所需的 PHP 代码,它将如下所示,其中有 2 个名称可供搜索:

// Create first find request
$findreq1 =$fm->newFindRequest('Contacts');

// Create second find request
$findreq2 =$fm->newFindRequest('Contacts');


// Specify search criterion for first find request 
$findreq1->addFindCriterion('Name', $searchTerm);

// Specify search criterion for second find request 
$findreq2->addFindCriterion('Suburb', $searchTerm);;

// Add find requests to compound find command 
$request->add(1,$findreq1); 
$request->add(2,$findreq2); 

我需要为数组中的每个名称生成等效代码。我知道我需要使用类似的东西:

foreach($contacts_array as $contact_array => $value) 
{
} 

也:

$num = 1
$num++; } /* foreach record */

我只是不确定如何将这一切结合在一起,以便在我进行时增加 $findreq1 变量。到目前为止,我所有的尝试都会产生错误。如果有人能告诉我如何将它们结合在一起,那将不胜感激,因为我正在学习 PHP。

谢谢

4

2 回答 2

1
<?php 
    for($i = 0; $i < count($contacts_array); $i++) { 
        ${'findreq' . ($i+1)} = $fm->newFindRequest('Contacts');
        ${'findreq' . ($i+1)}->addFindCriterion('Name', $contacts_array[$i]);
        $request->add($i+1, ${'findreq' . ($i+1)});
    }
?> 

阅读更多关于PHP 中的动态变量名

于 2012-09-21T06:26:31.100 回答
1

你们打败了我。

    <?php
    $contacts = Array('PR1010','PR1086');
    //print_r($contacts);

    foreach ($contacts as $key => $value) {
    //echo "key: ".$key." - Value: ".$value."<br>";

    $findreq1 = $fm->newFindRequest('Contacts');
    $findreq1->addFindCriterion('Name', $value); // this is where the Array's value is passed too, it is looped for every value in the Array
    $request->add(1,$findreq1); 

    // do more here 
    }
    ?>
于 2012-09-21T06:30:27.973 回答