PHP расщепленная строка - PullRequest
1 голос
/ 07 мая 2011

Привет, у меня есть один очень НУБНЫЙ вопрос, и я хочу знать ответ.Сначала моим языком программирования был VB6, и там я мог использовать метод Split, как в PHP, но главное, что я использую этот код:

$page_array = split('12s12d1a351c12a55a', 'a', 0);
echo count($page_array);

, я получаю результат «1», где я должен получить результат больше, чем1. так что не так?ты можешь мне помочь?

Ответы [ 5 ]

2 голосов
/ 07 мая 2011

Если вы посмотрите документы, то увидите, что вы установили ограничение на 0: http://php.net/manual/en/function.split.php

split ( string $pattern , string $string [, int $limit = -1 ] )

правильный путь с разнесением (лучше Дан Сплит):

$page_array = explode('12s12d1a351c12a55a', 'a');
echo count($page_array);
2 голосов
/ 07 мая 2011

Прежде всего, split () устарела. Посмотрите на документы .

Также: вы ограничиваете результаты последним аргументом.

array split ( string $pattern , string $string [, int $limit = -1 ] )
1 голос
/ 07 мая 2011

Важно проверить руководство. Руководство PHP split() полезно.

Ваш код должен был быть: $page_array = split('a', '12s12d1a351c12a55a');

1 голос
/ 07 мая 2011

Если установлен предел, возвращаемый массив будет содержать максимум элементов предела, причем последний элемент содержит всю оставшуюся строку.

Это так, потому что вы устанавливаете ограничение на 0, а не используете split устарело, попробуйте взорвать вместо

$page_array = explode('a','12s12d1a351c12a55a');
echo count($page_array);
0 голосов
/ 07 мая 2011

Вы устанавливаете лимит на 0, поэтому вы получите всю строку как 1 строку (без разбиений) удалите, 0 в вашем операторе split, также это (разделитель, строка) не (строка, разделитель) -> php имеет несколько обратных команд

попробовать:

$ page_array = split ('a', '12s12d1a351c12a55a'); счетчик эхо ($ page_array);

Что должно дать: 4

...