2015-06-08 4 views
7

Come cercare l'output solo - se un DOM come indicato di seguito?Come cercare l'output solo `-` in qualsiasi DOM usando lo script PHP?

  1. <p>-</p>
  2. <p><span style="font-size: medium;">-</span></p>
  3. ecc

Attualmente mi basta usare i codici come qui sotto per trovare questa uscita -:

$input = `<p>-</p>`; 
if($input == `<p>-</p>`): 
    return true; 
else: 
    return false; 
endif; 

un'idea migliore?

+1

Poiché è una corrispondenza esatta, la tua prova è già sufficiente. Se la partita è basata sul modello, avrai bisogno di RegEx. – Raptor

+0

Puoi mostrarmi i dettagli? – Nere

+0

La condizione è solo se '-' esiste ... significa che nessun altro personaggio è coinvolto. – Nere

risposta

2

La risposta accettata non avrebbe funzionato per casi particolari, come se i valori degli attributi tag contiene >-< o se - non è avvolto all'interno dei tag:

$input = '<span title="A valid title >-<">Should NOT match</span>'; 
$input = '<span>Should match</span>-'; 

Invece si potrebbe usare strip_tags(), che non è efficiente come strpos() ma funzionerebbe per tutti i casi:

+0

Questo, funziona come hai detto - valido per tutte le condizioni – Nere

3

provare

$input = `<p>-</p>`; 
$input = `<p><span style="font-size: medium;">-</span></p>`; 
$input = `<p><div>-</div>`; 
if(strpos($input, '>-<')): 
    return true; 
else: 
    return false; 
endif; 
+2

Funziona per me ... grazie mille .. – Nere

+1

@ImranHamzah può essere se (strpos ($ input, '> -

Problemi correlati