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 では、1 つの引数で関数を呼び出しています。page2 では、結果を関連配列に保持しています。
page1 から配列を印刷すると、出力が次のように表示されます
Array
(
[vc] => Array
(
[0] => CB
[1] => RD
[2] => RT
[3] => YX
)
[vi] => Array
(
[0] => 01461
[1] => 95101
[2] => 30818
[3] => 77126
)
)
このようにpage1で配列を使いたかった
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++;
}
しかし、「通知:非オブジェクトのプロパティを取得しようとしています」というエラーが表示されます
この問題を解決する方法を教えてください。
よろしくヘイリー