Я имею, переменные параметры удержания, разделенные запятой, (Интегрируются), и я пытаюсь получить общее количество значений в той переменной.как бы то ни было. Количество () просто возвращается 1.
Я попытался преобразовать разделенные от запятой значения в правильно отформатированный массив который все еще слюна out1.
Таким образом, вот быстрый отрывок где sarray
сессия равна value1, value2, value3:
$schools = $_SESSION['sarray'];
$result = count($schools);
Вам нужно взорвать $ школ
в фактический массив:
$schools = $_SESSION['sarray'];
$schools_array = explode(",", $schools);
$result = count($schools_array);
если вам просто нужен счетчик и вы на 100% уверены, что это чистый список, разделенный запятыми, вы также можете использовать substr_count () , который может быть немного быстрее и т. что важно, память проще с очень большими наборами данных:
$result = substr_count( $_SESSION['sarray'], ",") +1;
// add 1 if list is always a,b,c;
$schools = $_SESSION['sarray'];
$array = explode(',', $schools); array_walk($array, 'trim');
$count = count($array);
array_walk ($ array, 'trim')
удалит любой конечный пробел в значении элементов. :)
На самом деле, все проще:
$count = substr_count($schools, ',') + 1;