collecthor / spss
SPSS是基于PHP实现的IBM SPSS Statistics标准
v3.1.1
2021-11-19 08:26 UTC
Requires
- php: >=8.0
- ext-bcmath: *
- ext-mbstring: *
Requires (Dev)
- doctrine/instantiator: 1.0.5
- phing/phing: ^2
- phpdocumentor/reflection-docblock: 3.0.2
- phpunit/phpunit: ^4.8
- squizlabs/php_codesniffer: ^3
README
这是一个用于读取和写入SPSS / PSPP .sav数据文件的PHP库。这个库是从tiamo/spss分叉出来的,因为原始库没有太多的活跃度。
版本 2.1.0 (变更日志)
计划
计划是在将来彻底重写这个库,以便支持流式传输大型数据集。
要求
- PHP 7.3.0及以上版本(此分支将不支持没有活跃支持的PHP版本)
- mbstring扩展
- bcmath扩展
安装
安装此扩展的首选方式是通过composer。
运行以下命令:
composer require collecthor/spss
或者
"tiamo/spss": "*"
将以下内容添加到你的composer.json
文件的require部分文件,或者从这里下载。
使用方法
读取器示例
// Initialize reader $reader = \collecthor\spss\Reader::fromFile('path/to/file.sav'); // Read header data $reader->readHeader(); // var_dump($reader->header); // Read full data $reader->read(); // var_dump($reader->variables); // var_dump($reader->valueLabels); // var_dump($reader->documents); // var_dump($reader->data);
或者
$reader = \collecthor\spss\Reader::fromString(file_get_contents('path/to/file.sav'))->read();
写入器示例
$writer = new \collecthor\spss\Writer([ 'header' => [ 'prodName' => '@(#) SPSS DATA FILE test', 'layoutCode' => 2, 'compression' => 1, 'weightIndex' => 0, 'bias' => 100, 'creationDate' => '01 Feb 01', 'creationTime' => '01:01:01', ], 'variables' => [ [ 'name' => 'VAR1', # For UTF-8, 64 / 3 = 21, mb_substr($var1, 0, 21); 'width' => 0, 'decimals' => 0, 'format' => 5, 'columns' => 50, 'align' => 1, 'measure' => 1, 'data' => [ 1, 2, 3 ], ], ... ] ]);
变更日志
请查看变更日志
许可协议
本库遵循MIT许可协议。