Windows Azure Blob Storage kasutamine PHP-ga
18.12.2009 | Gunnar
Eelmisel kuul kirjutasin avaldasin kande, kus tutvustasin Windows Azure Blob Storage teenuses failidega tegelemist. Failide lugemiseks ja kirjutamiseks sai kirjutatud .NET raamistikul jooksev rakendus. Käesolevas kandes näitan kuidas sama asi teha lihtsasti ja kiiresti ära PHP peal.
Kuigi idee poolest võiks kasutada mõnda REST-i teeki, olen ma selleks kõigeks liiga laisk, kui on võtta paremad vahendid. Sedakorda päästis mind tüütust nokitsemisest Windows Azure SDK for PHP.
Kui Windows Azure CTO konto on olemas ja server, kus PHP-d jooksutada, siis on kõik vajalik olemas. Tuleb vaid Azure SDK eeltoodud lehelt oma masinasse sikutada ja PHP-skriptidele kättesaadavaks teha. Mõned pisikesed soovitused ka.
- Windows Azure SDK for PHP on zip-fail. Paki see lahti ja kopeeri sealt kataloog nimega Microsoft kuhugi kohta, kust PHP antud masinas faile oskab külge võtta.
- Soovitan PHP-l sisse keerata logimise kõige madalama tasemega, et näha oleks ka hoiatused.
- Kontrolli PHP konfiguratsioonist, et cURL laiendus oleks aktiivne.
Nüüd peaks kõik vajalik tehtud olema ja võibki asuda failide kallale. Järgnev kood annab lihtsa näite nii faili lugemise kui ka kirjutamise kohta.
error_reporting(E_ALL);
header('Content-type: text/plain');
require_once 'Microsoft/WindowsAzure/Storage/Blob.php';
// Loo ühendus Blob Storage teenusega
$client = new Microsoft_WindowsAzure_Storage_Blob(
"blob.core.windows.net",
"<ACCOUNT>",
"<key>"
);
// Loe fail Data.xml konteinerist dataset
$localpath = getcwd() . '\Data.xml';
$client->getBlob('dataset', 'Data.xml', $localpath);
// Kirjuta fail example.txt konteinerisse dataset
$localpath = getcwd() . '\example.txt';
$result = $client->putBlob('dataset', 'example.txt', $localpath);
?>
<ACCOUNT> selles näites on Windows Azure konto nimi ja <KEY> on base64 kodeeringuga võti, mille saab Windows Azure teenuse leheküljelt. Asenda need väärtused ära enne kui näite käima lased.
Windows Azure Blob Storage on väga lihtsasti kasutatav ka PHP rakendustest – musta töö teeb meie eest ära PHP jaoks loodud SDK. Kood, mille abil me faile lugesime ja kirutasime, on nii lihtne, et sellega saaks hakkama ka algajad.
