Delicious Bookmark this on Delicious Share on Facebook SlashdotSlashdot It! Digg! Digg



PHP : Function Reference : YAZ Functions : yaz_sort

yaz_sort

Sets sorting criteria (PHP 4 >= 4.0.7, PECL yaz:0.9-1.0.9)
void yaz_sort ( resource id, string criteria )

Example 2680. Sort Criterias

To sort on Bib1 attribute title, case insensitive, and ascending you would use the following sort criteria:

1=4 ia

If the secondary sorting criteria should be author, case sensitive and ascending you would use:

1=4 ia 1=1003 sa

Code Examples / Notes » yaz_sort

peter

This information is located in several places in the documentation, but takes awhile to find.  
yaz_sort() only works for fields that have an associated sort register.  Failure to link a sort register will generate the error "Cannot sort according to sequence".
The sort register is created in the default.idx file and referenced in the *.abs file.  This is the sort register setting in default.idx:
...
# Sort register (no mapping at all)
sort s
completeness 1
charmap string.chr
...
In the above code the "s" register is setup as the sort register.  Charmap string.chr defines the string conversion for diacritics.
This is the reference to the sort index in the *abs file:
...
elm (2,1)                   title                      !:w,!:p,!:s
...
In the above line the "!:s" causes a sort register to be created for the field.
Once the above changes have been made, reindex all the source records and restart the server.   Check for a "sort<fieldid>-0.mf" file in the zebra data directory to verify operation.  yaz_sort() should now work properly.


Change Language


Follow Navioo On Twitter
yaz_addinfo
yaz_ccl_conf
yaz_ccl_parse
yaz_close
yaz_connect
yaz_database
yaz_element
yaz_errno
yaz_error
yaz_es_result
yaz_es
yaz_get_option
yaz_hits
yaz_itemorder
yaz_present
yaz_range
yaz_record
yaz_scan_result
yaz_scan
yaz_schema
yaz_search
yaz_set_option
yaz_sort
yaz_syntax
yaz_wait
eXTReMe Tracker