Tråd bedømmelse:
  • 0 Stemmer - 0 Gennemsnit
  • 1
  • 2
  • 3
  • 4
  • 5
PHP substr strrpos bag fra?
12-02-2014, 10:45
#1
PHP substr strrpos bag fra?
har denne kode som skriver "nederen"

Kode:
$str = 'nederen, det her er en test';
echo substr($str,0,strrpos(substr($str,0,100),','));

syndes ikke lige jeg kan finde ud af, at få lavet sådan at den læser bag fra og på den måde "skriver det her er en test"

en af jer som kan et tricks eller to? :)
Er ordblind, så stavefejl er gratis! XD
Ailicis.cc | Quadcopter | Bitcoin | Facebook | Skype
Besøg denne brugers hjemmeside Find alle beskeder fra denne bruger
Citer denne besked i et svar
12-02-2014, 11:39 (Denne besked var sidst ændret: 12-02-2014, 11:41 af Doctor Blue.)
#2
RE: PHP substr strrpos bag fra?
Du kan tælle bagfra ved at give substr en negativ længde :)
substr("abcdef", 0, -2) == "ef"

Hvis du bare vil dele den op ved kommaet kan du bruge explode($string, ",").
Mangler du hjælp?
Regler |  E-mail (PGP)
Besøg denne brugers hjemmeside Find alle beskeder fra denne bruger
Citer denne besked i et svar
12-02-2014, 12:19
#3
RE: PHP substr strrpos bag fra?
(12-02-2014, 11:39)Doctor Blue Skrev: Du kan tælle bagfra ved at give substr en negativ længde :)
substr("abcdef", 0, -2) == "ef"

Hvis du bare vil dele den op ved kommaet kan du bruge explode($string, ",").

ja det ved jeg :), men hvordan får jeg strrpos til at tælle, bag fra og tilbage til , sådan jeg ved hvor "mange" minus jeg skal bruge :P
Er ordblind, så stavefejl er gratis! XD
Ailicis.cc | Quadcopter | Bitcoin | Facebook | Skype
Besøg denne brugers hjemmeside Find alle beskeder fra denne bruger
Citer denne besked i et svar
12-02-2014, 12:22
#4
RE: PHP substr strrpos bag fra?
(12-02-2014, 12:19)ailicis Skrev: ja det ved jeg :), men hvordan får jeg strrpos til at tælle, bag fra og tilbage til , sådan jeg ved hvor "mange" minus jeg skal bruge :P

Træk strengens længde fra? :)
$fromend = $fromstart - strlen($string)
Mangler du hjælp?
Regler |  E-mail (PGP)
Besøg denne brugers hjemmeside Find alle beskeder fra denne bruger
Citer denne besked i et svar
12-02-2014, 12:33
#5
RE: PHP substr strrpos bag fra?
(12-02-2014, 12:22)Doctor Blue Skrev: Træk strengens længde fra? :)
$fromend = $fromstart - strlen($string)

awww kan ikke få det til at virke som jeg vil xD


det her er min "real" str
<td class="numeric_even">49.44 MB</td><td class="numeric_even">45.94 MB</td><td class="numeric_even">95.38 MB

kan bare ikke få den til at læse bag fra og tilbage til det røde >, sådan at jeg kun får det grønne med

og kan godt lave det, den anden vej, men ikke bag fra
Er ordblind, så stavefejl er gratis! XD
Ailicis.cc | Quadcopter | Bitcoin | Facebook | Skype
Besøg denne brugers hjemmeside Find alle beskeder fra denne bruger
Citer denne besked i et svar
12-02-2014, 12:51 (Denne besked var sidst ændret: 12-02-2014, 12:51 af BlimBlamBlar.)
#6
RE: PHP substr strrpos bag fra?
Kode:
$s = '<td class="numeric_even">49.44 MB</td><td class="numeric_even">45.94 MB</td><td class="numeric_even">95.38 MB';
echo substr($s, strrpos($s, '>') + 1) . "\n";
Find alle beskeder fra denne bruger
Citer denne besked i et svar
12-02-2014, 13:03
#7
RE: PHP substr strrpos bag fra?
(12-02-2014, 12:51)BlimBlamBlar Skrev:
Kode:
$s = '<td class="numeric_even">49.44 MB</td><td class="numeric_even">45.94 MB</td><td class="numeric_even">95.38 MB';
echo substr($s, strrpos($s, '>') + 1) . "\n";

tak BlimBlamBlar, hvad skulle jeg gøre uden dig! :D
Er ordblind, så stavefejl er gratis! XD
Ailicis.cc | Quadcopter | Bitcoin | Facebook | Skype
Besøg denne brugers hjemmeside Find alle beskeder fra denne bruger
Citer denne besked i et svar
12-02-2014, 14:57
#8
RE: PHP substr strrpos bag fra?
(12-02-2014, 13:03)ailicis Skrev: tak BlimBlamBlar, hvad skulle jeg gøre uden dig! :D

Uh...det tør jeg slet ikke tænke på Wink
Find alle beskeder fra denne bruger
Citer denne besked i et svar
12-02-2014, 23:13
#9
RE: PHP substr strrpos bag fra?
Hmm, jeg arbejdede nok mere i noget som dette:
$s = '<td class="numeric_even">49.44 MB</td><td class="numeric_even">45.94 MB</td><td class="numeric_even">95.38 MB';
$r = explode('>', $s);
echo end($r);

Det er mere overskueligt, men lidt hacky og virker kun i den her specifikke sammenhæng. Synes bare ikke der er nogen grund til at gentage BlimBlamBlar's løsning der nok umiddelbart er den bedste (Så kan man så diskutere om regular expression er en bedre fremgangsmåde).
Mangler du hjælp?
Regler |  E-mail (PGP)
Besøg denne brugers hjemmeside Find alle beskeder fra denne bruger
Citer denne besked i et svar
13-02-2014, 09:42
#10
RE: PHP substr strrpos bag fra?
(12-02-2014, 23:13)Doctor Blue Skrev: Hmm, jeg arbejdede nok mere i noget som dette:
$s = '<td class="numeric_even">49.44 MB</td><td class="numeric_even">45.94 MB</td><td class="numeric_even">95.38 MB';
$r = explode('>', $s);
echo end($r);

Det er mere overskueligt, men lidt hacky og virker kun i den her specifikke sammenhæng. Synes bare ikke der er nogen grund til at gentage BlimBlamBlar's løsning der nok umiddelbart er den bedste (Så kan man så diskutere om regular expression er en bedre fremgangsmåde).
Der er altid flere måder at gøre tingene på, og hvad der er pænest er lidt subjektivt.
Jeg tænker mere i performance, og at finde et index og lave en substring på den baggrund er knap så tungt som at opbygge et array, hvor du kun er interesseret i det sidste element.
Rent logisk synes jeg også, at min måde svarer mere til, hvad jeg ville gøre i den virkelige verden, hvis jeg skulle finde frem til det sidste kapitel i en bog, ville jeg søge baglæns...ikke finde alle kapitler og vælge det sidste.
Find alle beskeder fra denne bruger
Citer denne besked i et svar
« Ældre | Nyere »




User(s) browsing this thread: 1 Gæst(er)