swf_closefile
    (PHP 4, PECL)
swf_closefile -- 
     カレントの Shockwave Flash ファイルを閉じる
    
説明
void 
swf_closefile ( [int return_file] )
     swf_openfile() 関数によりオープンされたファイルを
     閉じます。パラメータ return_file が設定されている
     場合、SWF ファイルの内容が関数から返されます。
    
     
| 例 1. 
       ユーザの入力に基づき簡単な flash ファイルを生成し、出力します。
       また、データベースにこれを保存します。
       | 
<?php
 // 変数$textはユーザにより投稿されます。
 
 // データベースアクセス用のグローバル変数
 // (swf_savedata()関数で使用)
 $DBHOST = "localhost";
 $DBUSER = "sterling";
 $DBPASS = "secret";
 
 swf_openfile("php://stdout", 256, 256, 30, 1, 1, 1);
 
 swf_definefont(10, "Ligon-Bold");
 swf_fontsize(12);
 swf_fontslant(10);
 
 swf_definetext(11, $text, 1);
 
 swf_pushmatrix();
 swf_translate(-50, 80, 0);
 swf_placeobject(11, 60);
 swf_popmatrix();
 
 swf_showframe();
 
 swf_startdoaction();
 swf_actionstop();
 swf_enddoaction();
 
 $data = swf_closefile(1);
 
 $data ?
 swf_savedata($data) :
 die("Error could not save SWF file");
 
 // void swf_savedata (string data)
 // 後で取得できるように生成されたファイルをデータベースに保存します。
 function swf_savedata($data)
 {
 global $DBHOST,
 $DBUSER,
 $DBPASS;
 
 $dbh = @mysql_connect($DBHOST, $DBUSER, $DBPASS);
 
 if (!$dbh) {
 die (sprintf("Error [%d]: %s",
 mysql_errno(), mysql_error()));
 }
 
 $stmt = "INSERT INTO swf_files (file) VALUES ('$data')";
 
 $sth = @mysql_query($stmt, $dbh);
 
 if (!$sth) {
 die (sprintf("Error [%d]: %s",
 mysql_errno(), mysql_error()));
 }
 
 @mysql_free_result($sth);
 @mysql_close($dbh);
 }
 ?>
 | 
 |