<?php require_once "/Path/to/Prods/src/Prods.inc.php"; // make an iRODS account object for connection, assuming: // username: demouser, password: demopass, server: srbbrick15.sdsc.edu, port: 1247 $account = new RODSAccount("srbbrick15.sdsc.edu", 1247, "demouser", "demopass"); //create an file object for read, assuming the path is "/tempZone/home/demouser/test_read.txt" $myfile = new ProdsFile($account, "/tempZone/home/demouser/test_read.txt"); //read and print out the file $myfile->open("r"); echo "the file reads: <pre>"; while ($str = $myfile->read(4096)) { echo $str; } echo "</pre>"; //close the file pointer $myfile->close(); //create an file object for write, assuming the path is "/tempZone/home/demouser/test_write.txt" $myfile = new ProdsFile($account, "/tempZone/home/demouser/test_write.txt"); //write hello world to the file, onto "demoResc" as resource. Note that resource name is //required here by method open(), because iRODS needs to know which resource to write to. $myfile->open("w+", "demoResc"); $bytes = $myfile->write("Hello world!\n"); //print the number of bytes writen echo "{$bytes} bytes written <br/>\n"; $myfile->close();
break; } } if ($metaalreadyset === true) { $time = '[' . date('c') . ']'; echo "{$time} 0: metadata already set for '{$target_file}'\n"; exit(0); } // download file from irods to tmp $localfile = '/tmp/' . basename($target_file); if (file_exists($localfile)) { unlink($localfile); } $irodsfile->open("r"); $str = ''; while (($buffer = $irodsfile->read(1024 * 1024)) != NULL && connection_status() == 0) { $str = $str . $buffer; } $irodsfile->close(); file_put_contents($localfile, $str); extactExif($localfile, $irodsfile); if (file_exists($localfile)) { unlink($localfile); } $time = '[' . date('c') . ']'; echo "{$time} 0: '{$target_file}' processed!\n"; exit(0); } catch (Exception $e) { if (file_exists($localfile)) { unlink($localfile); }
$childfile->open("r"); echo "desc=".$childfile->getL1desc()."<br/>\n"; echo "<pre>".$childfile->read($childfile->stats->size)."</pre><br/>\n"; $cur_offset=$childfile->seek(3); echo "offsetted '$cur_offset' bytes <br/> \n"; echo "<pre>".$childfile->read($childfile->stats->size)."</pre><br/>\n"; */ //$childfile->close(); } $myfile = new ProdsFile($account, "/tempZone/home/rods/test1"); $myfile->open("w+", "demoResc"); $bytes = $myfile->write("Hello world from Sifang!\n"); echo "{$bytes} bytes written <br/>\n"; $myfile->close(); $myfile->open("r", "demoResc", true); $str = $myfile->read(200); echo "the file reads: <pre>{$str}</pre>"; $myfile->close(); $file_src = new ProdsFile($account, "/tempZone/home/rods/test.php"); $file_dest = new ProdsFile($account, "/tempZone/home/rods/test.sifang.txt"); //$file_src->cpMeta($file_dest); foreach ($file_dest->getMeta() as $meta) { echo "{$file_dest->path_str}: {$meta->name}; {$meta->value}; {$meta->units} <br/> \n"; } $meta = array(new RODSMeta("test1", "1")); $files = ProdsPath::queryMeta($account, $meta); foreach ($files as $file) { echo "{$file} <br/>\n"; } echo "<hr/>"; $dirs = ProdsPath::queryMeta($account, $meta, 1);