Re: split behaviour differences in perl and php

From: Date: Thu, 16 Sep 2004 18:38:56 +0000
Subject: Re: split behaviour differences in perl and php
References: 1 2  Groups: php.general 
Request: Send a blank email to php-general+get-196889@lists.php.net to get a copy of this message
> * Thus wrote Sandip Bhattacharya: >> This stumped me badly in my present project. Is this a bug or a feature >> in >> PHP? I am trying to split a string into two, where only one half (and >> the >> delimiter) is present. >> >> >> IN PERL >> ================================== >> [sandip@pluto ~]$ cat s1.pl >> @t = split(/,/ , "a,b"); >> $len = $#t + 1; >> print "$len\n"; >> @t = split(/,/, "a,"); >> $len = $#t + 1; >> print "$len\n"; >> >> [sandip@pluto sql]$ perl s1.pl >> 2 >> 1 >> >> >> IN PHP >> ======================= >> >> [sandip@pluto ~]$ cat s1.php >> <?php >> print count(split(',', 'a,b'))."\n"; >> print count(split(',', 'a,'))."\n"; >> ?> >> >> [sandip@pluto sql]$ php -q s1.php >> 2 >> 2 > > split in php isn't the same as perl's split, there is preg_split() > which you can use: > > $results = preg_split('/,/','a,', -1, PREG_SPLIT_NO_EMPTY); > print(count($results)); // outputs: 1 > > > Curt Would explode() provide the same technique? $var = "a,"; $results = explode(",", $var); $results[0] = a; -- --Matthew Sims --<http://killermookie.org>

« previous php.general (#196889) next »