Accueil > Forum > > > > Stripslashes sur certaines lignes uniquement
Stripslashes sur certaines lignes uniquement
lundi 17 août 2009 à 15:44:25 |
Stripslashes sur certaines lignes uniquement

Kommius
|
Bonjour à tous, :mrgreen:
Je cherche à faire un script relativement simple.
Il s'agit d'aller extraire le contenu d'un fichier, et faire un [code]stripslashes[/code] sur toutes les lignes contenant un [code]echo "";[/code].
Pour le moment, voici le bout de code que j'ai réussi à pondre :
[php]$file_contents = file_get_contents($fichier);
if(preg_match_all('`^echo"(.*?)"', $file_contents, $matches)){
foreach ($matches as $val) {
$processed .= stripslashes($val);
}
} else {
$processed .= $file_contents; //-- Que dois-je mettre ici si le match ne correspond pas?
}
file_put_contents($fichier, $processed);
[/php]
Suis-je sur la bonne piste? Quelqu'un peut-il m'orienter dans la bonne direction s.v.p? Merci à vous!! :)
|
|
vendredi 21 août 2009 à 14:58:18 |
Re : Stripslashes sur certaines lignes uniquement

neigedhiver
|
Réponse acceptée !
Salut,
Tu devrais jeter un oeil à cette fonction tout à fait intéressante qu'est preg_replace_callback(). Ton expression régulière est correcte (et puis d'ailleurs tu sais mieux que moi si elle l'est ou pas, puisque tu ne donnes pas d'exemple de fichier lu), il te reste à la mettre dans preg_replace_callback et tu feras ton remplacement en une seule ligne.
Cette fonction t'évitera d'ailleurs de te poser la question si pour une ligne la correspondance n'est pas trouvée : parce que comme tu ne parcours que les lignes qui correspondent, les autres sont purement et simplement passées à la trappe... Exemple :
function my_strip($input) {
return stripslashes($input[1]);
}
$processed = preg_replace_callback('`^echo(?:\s)"([^"]*)"`m', 'my_strip', file_get_contents($fichier));
J'ai modifié un peu l'expression régulière : on autorise des espaces entre echo et le premier guillemet double, et entre les guillemets, on accepte tous les caractères qui ne sont pas des guillemets doubles. Et l'option m permet de considérer le fichier sur plusieurs lignes, pour rendre valable l'assertion de début de ligne (le caractère ^)
|
|
lundi 7 septembre 2009 à 19:44:43 |
Re : Stripslashes sur certaines lignes uniquement

Kommius
|
Réponse acceptée !
Merci beaucoup pour l'aide!!
Au cas ou cela pourrait servir à quelqu'un, je vous met le code utilisé :
Code PHP : $file_contents = preg_replace_callback(
'`echo\s*([\'"])(.*?)\1;`sm',
create_function(
'$matches',
'return stripslashes($matches[2]);'
),
$file_contentsc
);
echo "$file_contents";
|
|
Cette discussion est classée dans : code, file, lignes, stripslashes, contents
Répondre à ce message
Sujets en rapport avec ce message
numerotation des lignes d'un code [ par p3x ]
voila je cherche un script ou une fonction en rapport avec le sujet comme sur CS
Fichier excel [ par flopad ]
Bonjour, grace à ce code, je récupère les infos dans une bdd access et les envoie dans un fichier excel.Je voudrais au lieu de créer chaque fois le fi
file_get_contents ne parse pas le php [ par Linuss ]
Bonjour à tous, Alors voilà, je me suis remis au php après un temps d'arrêt, et du coup je tombe sur un os trè
Simulation d'un tableau excel sur IE [ par Instinctiv ]
Bonjour,Voici mon problème, je l'exprime avec mes mots de profane :- J'ai un fichier excel (environs 7colonnesX4000 Lignes).- Je souhaitrais que mes c
file_get_contents ne fonctionne pas comme voulu [ par sousoulebarbu ]
Bonjour, J'ai juste une ligne de code que je n'arrive pas à faire fonctionner:echo file_get_contents("http://pelerin.lesagencestv.com/php/recherche_re
la fonction file() maléfique [ par Radiohead4ever ]
Bon je commence avec le php et j'ai un petit problème concernant la fonction file(). Celle-ci, selon la doncumentation, serait supposé lire ligne par
Un bout de code simple qui ne marche pas [ par masterofquebec ]
Voici le premier code que j'ai fais utilisant sql : include "config.php"; $connect = mysql_connect($serveur,$nick,$pass) or die ("erreur de con
File_get_contents sur une URL : encodage [ par mentral ]
Bonjour,Je suis en train de coder un script qui récupère une page HTML et l'analyse pour en extraire des informations. Pour cela, j'utilise file_get_c
upload de fichier - interdire l'up de php. [ par pipouz ]
bonjour a tous voila , jai un petit formulaire d'envoi de fichiers sur mon server apache , mais je voudrais pouvoir empecher l'upload de fichier PHP,
Livres en rapport
|
Derniers Blogs
ROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGEROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGE par Matthieu MEZIL
Si vous utilisez Roslyn et que vous vous voulez vous simplifier le code du code rewriter, je vous conseille d'installer mon NuGet package RoslynHelper ....(read more) ...
Cliquez pour lire la suite de l'article par Matthieu MEZIL POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|