ГлавнаяОтзывы и пожеланияСтатьи
Функции по алфавиту:    a     b     c     d     e     f     g     h     i     j     k     l     m     n     o     p     q     r     s     t     u     v     w     x     y     z  

split


(PHP 3, PHP 4)

split - делает из строки массив с помощью регулярного выражения.

Описание

array split (string pattern, string string [, int limit])

Примечание: preg_split(), использующая Perl-совместимый синтаксис регулярных выражений, работает часто быстрее split().

Возвращает массив строк, каждая из которых является подстрокой строки string и образована путём разделения строки по границам, образованным патэрном pattern регулярного выражения. Если limit установлен, возвращённый массив будет содержать максимум limit элементов с последним элементом, содержащим остаток строки string. Если возникла ошибка, split() возвращает FALSE.

Для того чтобы разделить первые четыре поля строчки /etc/passwd:

Пример 1. split()
list($user,$pass,$uid,$gid,$extra)= split (":", $passwd_line, 5);

Примечание: если имеются n вхождений патэрна pattern, возвращённый массив будет содержать n+1 элементов. Например, если вхождений pattern нет, будет возвращён массив из одного элемента. Конечно, это также верно и в том случае, когда string пустая.

Для разбора данных, которые могут быть разграничены слэшами, точками или дефисами:

Пример 2. split()
$date = "04/30/1973";  // разграничителями могут быть slash, dot или hyphen
list ($month, $day, $year) = split (`[/.-]`, $date);
echo "Month: $month; Day: $day; Year: $year<br>
";

Заметьте, что pattern чувствителен к регистру.

Если вам не нужна мощь регулярных выражений, быстрее сработает explode(), которая не вызывает перегрузки машины регулярных выражений.

Для тех, кто ищет способ эмулировать Perl`овское поведение @chars = split(``, $str), рекомендуем посмотреть примеры для preg_split().

Обратите, пожалуйста, внимание, что pattern это регулярное выражение. Если вы хотите разделить на любом из символов, имеющих в регулярных выражениях специальное значение, вам нужно сначала мнемонизировать/escape эти символы. Если вам кажется, что split() (или любая другая regex-функция) делает нечто странное, прочтите файл regex.7, включённый в поддиректорию regex/ дистрибутива PHP. Он имеет формат manpage, поэтому вам понадобится что-нибудь сделать со строками man /usr/local/src/regex/regex.7, чтобы прочесть его.

См. также preg_split(), spliti(), explode(), implode(), chunk_split() и wordwrap().




Другие функции на s:

sem_acquire
sem_release
serialize
sesam_affected_rows
sesam_commit
sesam_connect
sesam_diagnostic
sesam_execimm
sesam_fetch_array
sesam_fetch_result
sesam_num_fields
sesam_query
session_cache_expire
session_cache_limiter
session_decode
session_encode
session_get_cookie_params
session_id
session_is_registered
session_name
session_save_path
session_set_save_handler
session_start
session_unregister
session_write_close
setcookie
settype
set_file_buffer
set_time_limit
shmop_open
shmop_read
shmop_size
shm_attach
shm_detach
shm_get_var
shm_remove_var
show_source
similar_text
sinh
sleep
snmprealwalk
snmpwalkoid
snmp_set_quick_print
socket_accept
socket_bind
socket_close
socket_connect
socket_create_listen
socket_create_pair
socket_getsockname
socket_iovec_add
socket_iovec_set
socket_last_error
socket_listen
socket_read
socket_readv
socket_select
socket_send
socket_sendmsg
socket_sendto
socket_set_option
socket_shutdown
socket_strerror
socket_writev
sort
soundex
spliti
sprintf
sql_regcase
sqrt
srand
sscanf
stat
strcspn
strftime
stripcslashes
strip_tags
stristr
strlen
strnatcasecmp
strnatcmp
strpos
strrpos
strspn
strstr
strtolower
strtotime
strtr
strval
str_repeat
substr
substr_replace
SWFAction
SWFBitmap->getHeight
SWFBitmap->getWidth
SWFbutton->addAction
SWFbutton->addShape
SWFbutton->setAction
SWFbutton->setOver
SWFbutton->setUp
swfbutton_keypress
SWFDisplayItem->addColor
SWFDisplayItem->move
SWFDisplayItem->moveTo
SWFDisplayItem->Rotate
SWFDisplayItem->rotateTo
SWFDisplayItem->scale
SWFDisplayItem->scaleTo
SWFDisplayItem->setDepth
SWFDisplayItem->setRatio
SWFDisplayItem->skewX
SWFDisplayItem->skewXTo
SWFDisplayItem->skewY
SWFFill->skewXTo
SWFFont
swffont->getwidth
SWFGradient->addEntry
SWFMorph
SWFMorph->getshape1
SWFMorph->getshape2
SWFMovie
SWFMovie->nextframe
SWFMovie->setbackground
SWFShape
SWFShape->drawLine
SWFShape->drawLineTo
SWFShape->movePenTo
SWFShape->setLine
SWFSprite
SWFSprite->nextframe
SWFSprite->setframes
SWFText->addString
SWFText->getWidth
SWFText->setFont
SWFTextField
SWFTextField->align
SWFTextField->setbounds
SWFTextField->setcolor
SWFTextField->setFont
SWFTextField->setHeight
SWFTextField->setindentation
SWFTextField->setLeftMargin
SWFTextField->setMargins
SWFTextField->setname
swf_actiongotoframe
swf_actionnextframe
swf_actionplay
swf_actionprevframe
swf_actionsettarget
swf_actiontogglequality
swf_actionwaitforframe
swf_addbuttonrecord
swf_addcolor
swf_definebitmap
swf_defineline
swf_definepoly
swf_definetext
swf_endbutton
swf_endsymbol
swf_fontslant
swf_getfontinfo
swf_labelframe
swf_modifyobject
swf_mulcolor
swf_nextid
swf_openfile
swf_ortho2
swf_perspective
swf_placeobject
swf_polarview
swf_popmatrix
swf_removeobject
swf_scale
swf_setfont
swf_setframe
swf_shapearc
swf_shapecurveto
swf_shapefillbitmaptile
swf_shapefilloff
swf_shapelineto
swf_shapemoveto
swf_startdoaction
swf_startshape
swf_startsymbol
swf_textwidth
swf_translate
swf_viewport
sybase_affected_rows
sybase_close
sybase_fetch_array
sybase_fetch_field
sybase_fetch_object
sybase_fetch_row
sybase_field_seek
sybase_min_error_severity
sybase_min_server_severity
sybase_num_fields
sybase_num_rows
sybase_query
symlink
syslog
system


EXPERTGS.ru описание функций php.