PHP - 在数组中使用foreach
问题描述:
我正在努力获得正确的语法来解析出数组中的值以便与foreach循环一起使用。我有一个阵列:PHP - 在数组中使用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);
我需要为阵列中的每个名称生成等效代码。我知道我需要使用类似:让我去它增加$ findreq1变量
$num = 1
$num++; } /* foreach record */
我只是不知道如何将所有这些组合起来:
foreach($contacts_array as $contact_array => $value)
{
}
以及。我迄今为止的所有尝试都会产生错误如果任何人都可以告诉我如何将这些结合在一起,那么当我学习PHP时,我将非常感激。
感谢
答
<?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
$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
}
?>
+0
只有当他不在foreach循环之外使用$ findreq1,$ findreq2等时,您的示例才有用 –
如何确定addFindCriterion的第一个参数? – DCoder