まずどこかに Subversion リポジトリを作成してください。PHP スクリプトで どのように書けばよいのかを知りたいことでしょう。数行後に、 VersionControl_SVN::VersionControl_SVN_List() コマンドを使用する例を 示します。
Subversion リポジトリの内容を読み込む
<?php
require_once 'VersionControl/SVN.php';
// エラー処理を設定します -- 常にこのようにしておきましょう!
$svnstack = &PEAR_ErrorStack::singleton('VersionControl_SVN');
// 実行時オプションを設定します
$options = array('fetchmode' => VERSIONCONTROL_SVN_FETCHMODE_ARRAY);
// list クラスをファクトリに要求します
$svn = VersionControl_SVN::factory('list', $options);
// 必要なスイッチや引数を定義します
$switches = array('username' => 'user', 'password' => 'pass');
$args = array('svn://svn.example.com/repos/TestProject');
// コマンドを実行します
if ($output = $svn->run($args, $switches)) {
print_r($output);
} else {
if (count($errs = $svnstack->getErrors())) {
foreach ($errs as $err) {
echo '<br />'.$err['message']."<br />\n";
echo "Command used: " . $err['params']['cmd'];
}
}
}
?>
上で使用したリポジトリにもし VersionControl_SVN のソースが 格納されていれば、この例の出力は以下のようになります。
<?php
Array
(
[0] => Array
(
[name] => docs
[type] => D
)
[1] => Array
(
[name] => package.xml
[type] => F
)
[2] => Array
(
[name] => SVN.php
[type] => F
)
[3] => Array
(
[name] => SVN
[type] => D
)
[4] => Array
(
[name] => tests
[type] => D
)
)
?>
上の出力例で、ディレクトリには
D
、ファイルには F
というフラグが立っていることに注意しましょう。
出力に関する詳細情報はを得るには、配列
$options
でverbose
に TRUE を設定します。