cvs: php4 /ext/standard basic_functions.c php_string.h string.c

From: Date: Tue, 11 Feb 2003 22:47:26 +0000
Subject: cvs: php4 /ext/standard basic_functions.c php_string.h string.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-18691@lists.php.net to get a copy of this message
iliaa Tue Feb 11 17:47:26 2003 EDT Modified files: /php4/ext/standard string.c php_string.h basic_functions.c Log: Added strpbrk(), which is essentially a wrapper around C's strpbrk function that allows searching through a string for a character list. Index: php4/ext/standard/string.c diff -u php4/ext/standard/string.c:1.355 php4/ext/standard/string.c:1.356 --- php4/ext/standard/string.c:1.355 Sat Feb 8 10:26:17 2003 +++ php4/ext/standard/string.c Tue Feb 11 17:47:25 2003 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: string.c,v 1.355 2003/02/08 15:26:17 sniper Exp $ */ +/* $Id: string.c,v 1.356 2003/02/11 22:47:25 iliaa Exp $ */ /* Synced with php 3.0 revision 1.193 1999-06-16 [ssb] */ @@ -4379,6 +4379,30 @@ } /* }}} */ +/* {{{ proto array strpbrk(string haystack, string char_list) + Search a string for any of a set of characters */ +PHP_FUNCTION(strpbrk) +{ + char *haystack, *char_list; + int haystack_len, char_list_len; + char *p; + + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ss", &haystack, &haystack_len, &char_list, &char_list_len) == FAILURE) { + RETURN_FALSE; + } + + if (!char_list_len) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "The character list cannot be empty."); + RETURN_FALSE; + } + + if ((p = strpbrk(haystack, char_list))) { + RETURN_STRINGL(p, (haystack + haystack_len - p), 1); + } else { + RETURN_FALSE; + } +} +/* }}} */ /* * Local variables: Index: php4/ext/standard/php_string.h diff -u php4/ext/standard/php_string.h:1.70 php4/ext/standard/php_string.h:1.71 --- php4/ext/standard/php_string.h:1.70 Fri Feb 7 16:36:18 2003 +++ php4/ext/standard/php_string.h Tue Feb 11 17:47:26 2003 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_string.h,v 1.70 2003/02/07 21:36:18 iliaa Exp $ */ +/* $Id: php_string.h,v 1.71 2003/02/11 22:47:26 iliaa Exp $ */ /* Synced with php 3.0 revision 1.43 1999-06-16 [ssb] */ @@ -88,6 +88,7 @@ PHP_FUNCTION(str_shuffle); PHP_FUNCTION(str_word_count); PHP_FUNCTION(str_split); +PHP_FUNCTION(strpbrk); #ifdef HAVE_STRCOLL PHP_FUNCTION(strcoll); #endif Index: php4/ext/standard/basic_functions.c diff -u php4/ext/standard/basic_functions.c:1.576 php4/ext/standard/basic_functions.c:1.577 --- php4/ext/standard/basic_functions.c:1.576 Sun Feb 9 15:43:05 2003 +++ php4/ext/standard/basic_functions.c Tue Feb 11 17:47:26 2003 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: basic_functions.c,v 1.576 2003/02/09 20:43:05 iliaa Exp $ */ +/* $Id: basic_functions.c,v 1.577 2003/02/11 22:47:26 iliaa Exp $ */ #include "php.h" #include "php_streams.h" @@ -343,6 +343,7 @@ PHP_FE(str_shuffle, NULL) PHP_FE(str_word_count, NULL) PHP_FE(str_split, NULL) + PHP_FE(strpbrk, NULL) #ifdef HAVE_STRCOLL PHP_FE(strcoll, NULL)

« previous php.cvs (#18691) next »