Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    individuare un elemento creato con explode

    Chiedo scusa per questa richiesta che a prima vista può sembrare banale.
    Normalmente io uso spesso la funzione PHP explode() più o meno in questo modo:
    Codice PHP:
    $test "Testo_per_prova";
    $sub explode ("_"$test);
    echo 
    $sub[1]; 
    Fin qui tutto bene.
    In passato mi sono imbattuto in una istruzione più concisa per stampare un elemento della funzione explode() durante l'esplosione della stringa. Un qualcosa come:
    Codice PHP:
    //   ovviamente questo è errato
    echo (explode ("_"$test)[1]) 
    Ho provato molte varianti. Purtroppo non ricordo dove l'ho letto nè riesco a creare questa istruzione.

    Spero in un vostro aiuto

  2. #2
    Credo che ciò sarà possibile solamente dalla versione 5.4 di PHP.
    Ho trovato questo esempio:

    codice:
    //Before PHP 5.4
    2	 
    3	$tmpVar = explode(' ', 'Sachin Ramesh Tendulkar');
    4	 
    5	echo $tmpVar[2];
    6	 
    7	//Output: Tendulkar
    8	 
    9	//PHP 5.4
    10	 
    11	echo explode(' ', 'Sachin Ramesh Tendulkar')[2];
    12	 
    13	//Output: Tendulkar
    LINK
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Ti ringrazio, satifal
    ho appena provato il tuo suggerimento ed infatti nel mio PHP Version 5.2.6 non funziona.
    Per avere un codice conciso nello script non mi rimane che usare una funzione personale tipo questa
    Codice PHP:
    function element ($array$pos) {
        
    $sub explode ("_"$array);
        return 
    $sub[$pos];
    }
    //    ========================================
    $test "Testo_per_prova";
    echo 
    element ($test1)
    //    output: per 
    Ti ringrazio anche per il link che mi hai suggerito. Il sito suggerito è molto interessante


  4. #4
    Giacchè debbo fare la funzione la faccio un po' più completa.
    Tra gli argomenti ci metto anche il delimitatore:
    Codice PHP:
    function element ($str$delimiter$pos) {
        
    $sub explode ($delimiter$str);
        return 
    $sub[$pos];
    }
    //           ================================
    echo element ("Testo_per_prova""_"1) . "
    \n"


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.