medlib / yaz
Medlib is a searche Library
Requires
- php: >=5.5.9
- medlib/marcxml: ~1.3
Requires (Dev)
- mockery/mockery: 0.9.*
- phpunit/dbunit: >=1.2
- phpunit/phpunit: ~6.0
- satooshi/php-coveralls: ~0.6
Replaces
- medlib/yaz: v2.2
This package is not auto-updated.
Last update: 2024-12-25 19:49:42 UTC
README
Installation Laravel
Dependencies
You can install this package by using Composer, running this command:
composer require medlib/yaz
The next required step is to add the service provider to config/app.php :
'providers' => [ ... Medlib\Yaz\Providers\YazServiceProvider::class, Medlib\MarcXML\Providers\ParserServiceProvider::class, ]
'aliases' => [ ... 'Yaz' => Medlib\Yaz\Facades\Yaz::class, 'Query' => Medlib\Yaz\Facades\Query::class, 'MarcXML' => Medlib\MarcXML\Facades\MarcXML::class, ]
Publish
The last required step is to publish views and assets in your application with :
php artisan vendor:publish
If you get the error
Nothing to publish for tag []!
Then run this command :
php artisan config:clear
Examples
-
Request with a return type of
BibliographicRecord
(all records):use Medlib\Yaz\Query\YazQuery; $this->results = YazQuery::create() ->from('SUDOC') ->where('au="totok" and ti="Handbuch"') ->orderBy('au ASC') ->all();
-
Request with a return type of
BibliographicRecord
(one record):use Medlib\Yaz\Query\YazQuery; $this->results = YazQuery::create() ->from('SUDOC') ->where('au="totok" and ti="Handbuch"') ->first();
-
Request with a return type of
BibliographicRecord
(limit):use Medlib\Yaz\Query\YazQuery; $this->results = YazQuery::create() ->from('BNF') ->where('au="totok" and ti="Handbuch"') ->limit(0,10) ->all();
-
Request with a return type of
string
(all records):use Medlib\Yaz\Query\YazQuery; use Medlib\Yaz\Record\YazRecords; $this->results = YazQuery::create() ->from('BNF') ->where('au="totok" and ti="Handbuch"') ->orderBy('au ASC') ->all(YazRecords::TYPE_STRING);
-
Request with a return type of
xml
equal toBibliographicRecord
(all records):use Medlib\Yaz\Query\YazQuery; use Medlib\Yaz\Record\YazRecords; $this->results = YazQuery::create() ->from('connection_name') ->where('au="totok" and ti="Handbuch"') ->orderBy('au ASC') ->all(YazRecords::TYPE_XML);
Allowed parameters
Type:
- TYPE_STRING
- TYPE_RAW
- TYPE_XML
- TYPE_SYNTAX
- TYPE_ARRAY
Pagination
-
Action:
use Medlib\Yaz\Pagination\Paginator; use Medlib\Yaz\Record\YazRecords; $pagination = new Paginator('BNF', 10); $pagination->getQuery() ->where('au="totok"') ->orderBy('ti ASC'); $pagination->setPage($request->get('page', 1)); $pagination->render();
-
Template:
Count: echo $pagination->getNbResults(); foreach($pagination->getResults(YazRecords::TYPE_STRING) AS $result): echo $result; endforeach;
Required
Congratulations, you have successfully installed Yaz Query Builder !