Я сказал бы, что, в зависимости от того, что дифференцирует Человека и Особенного человека, Вы, вероятно, не хотите полиморфизм для этой задачи.
я составил бы таблицу User, таблица Person, которая имеет nullable поле внешнего ключа Пользователю (т.е., Человек может быть Пользователем, но не имеет к).
Тогда я сделал бы таблицу SpecialPerson, которая касается таблицы Person с любыми дополнительными полями в нем. Если запись присутствует в SpecialPerson для данного Человека. Идентификатор, he/she/it является особенным человеком.
Это работает:
$string = 'A B C D';
$arr = preg_split('/[\s]+/', $string);
Я думаю, вам нужен preg_split
:
$input = "A B C D";
$words = preg_split('/\s+/', $input);
var_dump($words);
вместо использования разнесения попробуйте preg_split: http://www.php.net/manual/en/function.preg-split.php
@OP это не имеет значения, вы можете просто разделить пространство с помощью explode. Пока вы не захотите использовать эти значения, перебирайте разнесенные значения и отбрасывайте пробелы.
$str = "A B C D";
$s = explode(" ",$str);
foreach ($s as $a=>$b){
if ( trim($b) ) {
print "using $b\n";
}
}