page1.php中
$destinationCity = $_POST['destination'];
$sr = new searchArray();
$final = $sr->searcharray($destinationCity);
echo "<pre>";
print_r($final);
echo $final->vc[0];
echo "</pre>";
使page2.php
class searchArray {
public function searcharray($arr) {
$rst = array();
$length = strlen($arr);
if ($length == 2){
$sql = "select code from ukhotels where postcode LIKE '$arr%'";
$rsd = mysql_query($sql);
while($rs = mysql_fetch_array($rsd)){
$co = $rs['code'];
$vc = &$rst['vc'];
$vi = &$rst['vi'];
$vc[] = substr($co, 0, 2);
$vi[] = substr($co, 3, strlen($co));
}
}
在page1中,我用一个参数调用该函数。在page2中,我将结果保存在一个关联数组中。
当我从page1打印数组时,它显示输出为
Array
(
[vc] => Array
(
[0] => CB
[1] => RD
[2] => RT
[3] => YX
)
[vi] => Array
(
[0] => 01461
[1] => 95101
[2] => 30818
[3] => 77126
)
)
我想在第1页中使用这个数组
for($i=0, $j=1;$i<=20;$i++)
{
$params["VendorLocation"]["VendorCode"] = "{$final->vc[$i]}";
$params["VendorLocation"]["VendorLocationID"] = "{$final->vi[$i]}";
$params["VendorLocation"]["Key"] = "{$j}";
$j++;
}
但它给我一个错误,说“通知:试图获取非对象的属性”
任何人都可以帮我解决这个问题。
此致 黑利
答案 0 :(得分:0)
$ final是一个数组,访问这样的值:
for($i=0, $j=1; $i<=20; $i++) {
$params["VendorLocation"]["VendorCode"] = '{' . $final['vc'][$i] . '}';
$params["VendorLocation"]["VendorLocationID"] = '{' . $final['vi'][$i] . '}';
$params["VendorLocation"]["Key"] = "{$j}";
$j++;
}