Ga door naar de hoofdinhoud

Exploding a string with value separators to an array in CiviCRM

CiviCRM stores its multiselect custom field values in the database by concatenating the values, e.g. like this


(I replaced the CRM_Core_DAO::VALUE_SEPARATOR by * because the real unicode character, #&01, does not show anything sensible.)

This represents

    [0] => value1
    [1] => value2

Now if you just use explode(CRM_Core_DAO::VALUE_SEPARATOR, $value), you get

    [0] =>
    [1] => value1
    [2] => value2
    [3] =>

This is probably not wat you want. What you really want to do, is


I just put this in a blog post, because I always forget, and Google doesn't seem to know.


Comments powered by Disqus