0

FileMaker API PHPを使用して、phpでFileMakerデータを取得します。だから、それは非常にうまく機能します。簡略化したいと思います。

/** This code is correct and can't modify ***/
require_once ('inc/FM/FileMaker.php');
require_once ('inc/FM/param_FM.php');
$modele="Mura";
$id_folder=$_GET["folder"];
$id_ouvrage=$_GET["id"];
$findCommand =& $base->newFindCommand($modele);
$findCommand ->addFindCriterion('ID OUVRAGE', $id_ouvrage);
$result = $findCommand->execute();
if (!FileMaker::isError($result)) {
    $records = $result->getRecords();
}
else{
    echo "No result";
}
/*** END unmodify code ***/

いくつかのデータを表示したいときは、これを使用します:

$Collection  = $records[0]->getField('Collection book');
$title = $records[0]->getField('Title book');
$years = $records[0]->getField('Years book');

しかし、私はすべてのデータを配列に入れています。

$data= array('Collection' => 'Collection book','Title' => 'Title book', 'years' => 'Years book');

私はこのような48のデータを持っています。この配列を使用してすべてのデータを単純化できますか?ご協力いただきありがとうございます。

4

1 に答える 1

0

それがあなたが求めているものであるかどうかはよくわかりません。実際にフィールドが3つしかない場合はあまり意味がありませんが、次のようなことができます。

foreach ( $data as $var => $field ) {
  $$var = $records[0]->getField( $field );
}

これにより、配列にあるキーごとに変数が作成されます。$dataあなたが提供したもので、それはに設定$Collectionされ'Collection book'、に設定され、に$Title設定'Title book'$years'Years book'ます。配列内の2つのキーが大文字になっているため、変数名の大文字に注意してください。

于 2011-04-12T22:17:01.540 に答える