smartinm / mega-php-client
PHP的MEGA API客户端库。
dev-master
2013-12-29 13:24 UTC
Requires
- php: >=5.3.0
- ext-curl: *
- ext-mcrypt: *
- ext-openssl: *
This package is not auto-updated.
Last update: 2024-09-24 02:19:36 UTC
README
PHP客户端库,用于MEGA API。
注意:此库仍在开发中,尚不完整,因此API可能会更改。
要求
- PHP 5.x
- PHP Mcrypt扩展
- PHP OpenSSL扩展
- PHP cURL扩展
创建客户端
使用构造函数
$mega = new MEGA();
使用静态工厂方法
$mega = MEGA::create_from_login($email, $password);
这等价于
$mega = new MEGA(); $mega->user_login_session($email, $password);
更改默认的MEGA API服务器
MEGA::set_default_server(MEGA::SERVER_EUROPE);
处理公共文件
下载公共文件不需要认证。
获取文件信息
$mega = new MEGA(); $file_info = $mega->public_file_info($ph, $key); var_dump($file_info); // Print filename and size echo 'Filename: ' . $file_info['at']['n']; echo 'Size: ' . $file_info['s'];
使用链接
$file_info = $mega->public_file_info_from_link($link);
这等价于
$info = MEGA::parse_link($link); $file_info = $mega->public_file_info($info['ph'], $info['key']);
下载公共文件
// Save file to current directory. $filepath = $mega->public_file_save($ph, $key); echo 'File saved in ' . $filepath; // Equivalent using exported link $filepath = $mega->public_file_save_from_link($link); echo 'File saved in ' . $filepath;
以下有更多示例。
下载文件
使用流
// Write to file $fp = fopen($file, 'wb'); $size = $mega->public_file_download($ph, $key, $fp); fclose($fp);
返回内容
// Get content using temporary stream $content = $mega->public_file_download($ph, $key);
保存到磁盘
// Save file to temporary directory. $tmp = sys_get_temp_dir(); $file = $mega->public_file_save($ph, $key, $tmp); echo 'File saved in ' . $file;
私有文件
列出
$mega = MEGA::create_from_user($email, $password); $files = $mega->node_list(); print_r($files); // Get file info $file_info = $mega->node_file_info($files['f'][5]); print_r($file_info);
下载
- 函数
node_file_save()
等价于public_file_save()
- 函数
node_file_download()
等价于public_file_download()
用户会话
保存会话
$mega = MEGA::create_from_user($email, $password); // ... // Get current session as a base64 string $session = MEGA::session_save($mega); // Store in a safe place! db_store_session($session);
恢复会话
// Retrive saved session $session = db_get_session(); // Create client from previous session $mega = MEGA::create_from_session($session); // ...
状态
不需要用户认证的操作
需要用户认证的操作
致谢
-
此库由Sergio Martín (@smartinm)编写,作为官方MEGA JavaScript代码的移植。
-
部分代码基于Julien Marchand的工作。
-
此项目采用MIT许可协议。