2010-09-30 8 views
2

Je cette sitation:php: supprimer des éléments de chaîne

..<img src="//http://www... OR ..<img src="/http://www... OR ..<img src="////http://www... 

(/ - peut-être beaucoup plus)

Comment supprimer/avant http? Resultat toujours devrait être:

..<img src="http://www... 

Merci;)

+0

Pouvez-vous montrer un exemple concret? –

Répondre

3

Cela devrait faire l'affaire.

ltrim($url, "/"); 

Cela semble être une solution plutôt ponctuelle. Vous pourriez vouloir aller au fond du problème et l'éliminer à la source.

+0

+1 pour éliminer à la source –

0

Une expression régulière le long des lignes de ce qui devrait faire l'affaire, je pense:

$string = preg_replace('/="\/+http:/', '="http:', $string); 
+0

Merci, mais son travail ne fonctionne pas :( – lolalola

+0

Oui, il le fait.Pourriez-vous afficher exemple de ce que vous cherchez? –

0

En supposant que l'URL est définie dans un variable au sein de votre PHP, ltrim() pourrait être la réponse

$url = ltrim($url,'/'); 

bien que vous ne seriez pas en mesure d'utiliser cette option si vous aviez des URLs locales (par exemple '/images/img.gif') sans 'http: //'

0

Vous pourriez faire quelque chose comme ceci (str_replace() parce que est plus rapide qu'une expression régulière):

$markup = str_replace('//http://', 'http://', $markup); 

Pourquoi avez-vous besoin de cela? Il pourrait être préférable d'éliminer la source de ce problème.

Questions connexes