If using a regular expression for the split point, you need to use preg_split() instead of split().
Here, however, the split specifiers seem to be regular expressions listing just one character, so you can use plain old explode()
list ($id1, $fld) = explode('|', $id);
list ($this->ord, $this->desc) = explode(',', $this->ordstr);