Php variable "quote "

[Fermé]
Signaler
Messages postés
51
Date d'inscription
mardi 13 mai 2008
Statut
Membre
Dernière intervention
17 décembre 2008
-
Messages postés
870
Date d'inscription
mardi 11 mars 2008
Statut
Membre
Dernière intervention
10 juillet 2011
-
Bonjour,

voila j'ai un piti souci(comm beaucoup de monde ici)

mon objectif est de decompresser un bloc en php. ce bloc est donc inscrit dans une variable.mais ce bloc contient tous les caracteres alphanumerik ke je connais, dont les ' et les "".Ce qui a un rendu foireux sur ma variable.

ma question est comment renforcer le role des "" qui encadre la chaine pour que ceux a linterieur ne membete plus.

javais pensé a remplacer les " par des /" mais étant donné que le contenu de la chaine ne doit etre modifié...bah je sais pas koi faire.

3 réponses

Messages postés
870
Date d'inscription
mardi 11 mars 2008
Statut
Membre
Dernière intervention
10 juillet 2011
58
tu peux nous filer un exemple pour ton bloc? j'ai un peu de mal à comprendre exactement ce qu'il se passe^o)
Messages postés
51
Date d'inscription
mardi 13 mai 2008
Statut
Membre
Dernière intervention
17 décembre 2008
3
mon projet est de synchroniser des bases de données en php.
un premier outil qui ma été imposé, collecte toutes les requetes de mises a jours a faire dans un bloc de texte comme celui ci:

M|Code='3C3C10220-ME'|1|3C3C10220-ME| |ETHERNET POWER SOURCE|U|04.94.|False|579860|0|0|1250|724825|866891|144965|200|0|0|0|0|0|0|1|D|0|0|0|0|0|Unité|Unité|1000|12-PORT||INGRAM|3825666|||1|2003-11-12 19:17:39|2003-12-03 03:46:56|2003-12-03 03:39:27|True|1000|0|0|0|0|0||3COM|3C10220-ME |NS|NMS |||||||||||||||||||||||||||||1|M
M|Code='3C3C10222-ME'|2|3C3C10222-ME| |ETHERNET POWER SOURCE|U|04.94.|False|1092670|0|0|1250|1365838|1633542|273168|200|0|0|0|0|0|0|1|D|0|0|0|0|0|Unité|Unité|1000|24-PORT||INGRAM|3825667|||1|2003-11-12 19:17:39|2003-12-03 03:46:56|2003-12-03 03:46:56|True|1000|0|0|0|0|0||3COM|3C10222-ME |NS|NMS |||||||||||||||||||||||||||||2|M
M|Code='3C3C12063'|3|3C3C12063| |TP TRANSCEIVER INTERFACE|U|04.40.|False|61630|0|0|1250|77038|92137|15408|200|0|0|0|0|0|0|1|D|0|0|0|0|0|Unité|Unité|1000|MODULE 1 RJ-45||INGRAM|3820678|||1|2003-11-12 19:17:33|2003-12-03 03:46:54|2003-12-03 03:46:54|True|1000|0|0|0|0|0||3COM|3C12063 |UK|NMS |||||||||||||||||||||||||||||3|M

parce que lensemble des requetes fait son petit poids, pour accelerer la mise a jour ces requetes sont compresses a laide de la bibliotheque zlib, donnant ce résultat:

…ûGñyËsSc¿Î?·¯«â¼º”»ÝöRºü·½Z½ƒ3ïÌÛ>ôÞ' IÕ-4èáGS\vN¯È3­"ò\Hœª (3 6+KòY_•9òöÎ],ó©M‡¤ E,WÑp™E]’>êî¼KÚB»à=‚}H‰UF*pn01x—º êpŒôÆØ'wÂဿ4¿Á —Ä#°l*3R™'Ü%íAîEŒdUû"×bä]š”Så℃h­1¯£Ò_§µ„áiz]øÂŒç*ˆ’õ0öQ#É«ö9d û8ƆFå‚΀=ñ°TÂE³LЖó…Ú$VK¶0ç¹ÉY’÷pöz¡Uûœ2IY.¼ùÇû#tÆÄ„ÌôÁ)[hp0šµKWf ì·—ô®ôiµ=>ôÁ°Ñ½.L5SW‘¢‡½·ö¥¬Úç€=’ÜÑBz¹s«#/®°ìÿJZáZóÂ%p+sük[¿Á)קU¡%yÑ&ÕTÄÂàÍ\ð©õYb^¶ï¬Oÿœ/>»ËêGYœÊ×Ý
»2áŸÊf3óøÀ ×WEj
âÉªì´ KÆLeŒ|ntß— ø¶¡z¢¥]0XáiÌDÚ¥jH;³Ó=¶'Üj ç á}¬<hځŽK#¶ôÀºz%+LÈHUAMïÚ, Z¥œ'€N-Î㪩h“Îâôϝ01ÄfÏÛK{gzÎêüë\}—WÑæÊ} ŸêÂjÅ?#k&'ˆÙ»6ŒÜS™‰ÜdÈ›ri«ö9@Ž¼º.zß¿*GGŒŠO^ð–|A«ò+PŠØ;»¦bQÖy½ÏØÜ9i{X{[‘ª}Y[zãxƒú•»Cn1¡ìE8Üü™ªˆ²ß r¹0r6óx+’!o’n­Úç9ÎÞmßË=pÔMŽ‡ëé~àG¸i£|­6MñÅ•a½f^-
~~F®¢ø&H±ª}À3¢—9ë¡(ö\%ÙC]JÅÞ]´±4§‹RÏ“‰ÆZBŠeÔ·¯5u^µÏáqGK´ë‰zWî_Ël;b€ùEºÖµX÷AÏ:[:rÉ “1<ƒ~þCwº¨Úç:Ƈ:èçr]_¥ØõÀÜø
¿ñŒGÖ=ÖˆöãÕw°î=ym<”Èð6ÎA%«ö9Äkú<Uµ±—9d“TP_{Ï\é}^yÏÈh/
ºQ’Ì=ÁóJö ®UµÏ!bn搜ŠíÄ…‚š'4t•$a-f=[#IŒÉw"8û{åX£5Y?kj,‚VD³ªÜ——buÝM”‰x¦í[ÅmMÓƒiVbhÎwK³_[7¾;u4?@hKh’ôS°ÓI
Qç=hüÚ Ø#Žƒ>¼¯øùj ™Èx_­G0NìÈw
øÇ‹‡Œ†d³ÐPÄJ`ƒûÓåp]ÿ,±gÚ ûðü@53y溛°µŽ ØeÞ œF³.³ìKÒo`¤Ÿ/våïœíSD äŠñÞ›Ïö8^¿‡¼†’!%B;òsfähH6 íÁxœÃçüU öÓvó–ÝÁ_„!o!dx¸¥Ô”ƒÝ¨€ ¥Tdý­Ø' R_Ÿ£{„8›=bNz»°/À¼¦2¹Í™Ûš¹&U·2Ä1¿¬|/n¸>M\ D\S†½fn~?‹4¥äa¤í\Òšd¤y#P4­º…´ÔÕér.O‡í©ØÔ"eß’'ßæ­ì£xóÙÒDÓ”·–²áͪn¡»&èÕÛx‡í®FÌ[-/ž"Åý¯§¾¨|Ž”Hé[ á:»|_/¾CØBô'÷, Û㘛å°U›WÝBÌ…ô¶Ä£]Öà»y;„³¨™³8߁JÁ5fš˜lÂgÆŒo_͆Ïsøº/ªn!„/dýgµ÷ìe'È3Q^¾äXnD
Wyè|bëˆi‹#ÀKò0ðz6x‘ƒo-«n!/Yþ¯Õu_ށüˆúç‰ü½~œÀ™­·h™¡Wímªªn!D¯¿PÏÿ7ÀïÏöY¾šµª>màëª[á^.‡õa¿¹®1šùk{IïX0
U”'npN
ê0´i®Í'‹ûpgãNgsOmR¡H«¬;›´^h¹kWù=Æ@âBG3×8ÎÇ”ÔZUeÓ ÖL¶Hi¢DJÓßìþÄk&óˆ§&)¼5äíåÍw&i½äH¬¶§ãá„ÃO›ÔÏ¢Y”ve)¶hÝ(åÎ{–¼9*Åõ†?•›b¿]£ Þ"Bà%±r»ÔHf¹]´Í€ û÷ûË+7¤
VšC.´Ëx z»/.o—‚2C>ª8•gdÏŸY«J*¯¡\7ĉ«\íNåÈŠ:Ý¥ÿ³ËQ8_®›í¡ØlÏÇÝêOÈCú[Sؼ 0°Î]ænm$hŽkѤV*
à5~g5Õ •°Üm çîdR½¿ç
|Øâ|xÚlß]º¡}f:H—I¸õ ã8,ƒInn j»á„y º 8ÒÅ‹Âm^wÅõü큔Cú<ïám{×FíAMi–Ð1,Û!š=àU·Ð¼ÜôyÊÚyŠj<…Ñî…ÑØ£YÍß#ÌO축Ðq¿j6€›õ¡U½k#q; óp§æ“q^Û™OõB"ãý‘/ߧ?Á¬ûL;u†Æ²kðÈ+õðiÍŒYþƒß¾ÿü;ï86ïÔ57ÿ&wï5y¬S‹É"AV­ž^7»ÒwvS´œÞ­îçÙ|lžN@³]uŠ¤P]C5N08æŠsjžT7F\ 1;’ÅqµþËt6$ÓÉ}ezdbôÓÈ :µÚhTÕ-´òDiC ?ÂùÇœt­ôãp§ÅÆ7\2¥+™·½‰\éÃbÜéèÛ¦—|(DÀtxñfE˜Mj°qÃdg5+-ek5ö“à ·PË@gApNaéÎ15‰Æ¸WY¾L
Ûjõè,hFgúFGÄí¾|_õ©+klÇðì5—9ê¢ÑvÅÞjê¦êZe‘h#Dõ¶Ý¯vÅúzq‘28ßòYðΗÎY\a©tóeˆJ€5jx®¥ó¯'¬óçÈzŶvBì ¤ƒ!¿O@ù+Ä&G,Ķê:Ä ˆêzüQ¼¯þ*n¢æDØ5ÇÔP8±„–¬´bY¡ý,ÃË uÿ|”§3þæã-!¯F^Ì&ŸÚB85³VL¬3…êàÖ:èxXÂc*?=)J­ˆ’‚$ZHs…òX+8Ú^_žõsK
/¶Ç`4ÞŽØ’«ÿv=êé]GÙs˜%¹-é¡ü·?ß–VÝBw¾‰ŽRW†’¯&rr\sÆùoΆ"Í÷Vý<‰yœiιq^YVu ÁýÈàZýø±*zÇÏUHÂƇì¦i“ùPÖ„=JnxóHgö£R´9ÑÞ~ô ݉¶˜\åOô>øæc[¬€öÕólÛ#mã#M]sƒ
‹cñ^ì"Pÿ˜¾¡þVäáZ4#à@ ø!¢-àýiYKlƒ4o xïxÑ-º-HmÊ%¶àkWíKgÄGòÛèdž¸%C¾%¿Œy¨EŽÚÔú‰•U· þÄ´Š²8­¶›B3òãÕ»MˆlÅ·ñ€ÍýœXÐ}2¢P7çÆÞh[ï…@­û×¹`ŸoÛ×Sy8^¶ÿ¹F‰r9Þchz×Æò7=ZÊ7×÷+þ2çoþªêZi£àÌòˆ?eªg4Ó±ãÊ‚œrž+bп†ª µ:KÞ\}‹ƒÐcv@>lììÈlO¥I³Þôô 7Þ &û^JFÇM„,G›€ÂÍj)bP`…Ñü’
Ýæ·ß:êUЏÚ‡jÞFdÖ¨2­Âî­Q¿¼
´|ïIÜlNµ)…Þ½{úÏoh9õ1ÀщîÀ;(›ctï*1Å
óW—g4Ë¿hM¾ºÙ[u á¸q„lÄ0‚‚?iÌÑ(#áÈc7¢Á07UÍÑ›`¶ z¶E•Ù­šÔÉ`Šx»Õ/´1$I¥•Nû¶=•¿áŸB=©â¸Ý×Ê~çÙuýž;v½old

(eh eh, là ya tous les caracteres!)
(c'est juste un fragment pris au hasard, en fait)

ce charabia je le recois dans une variable du style $data=Charabiabiabia

mais comme dans ce bloc compressé ya des guillemets simple et double je suis embété.
Messages postés
51
Date d'inscription
mardi 13 mai 2008
Statut
Membre
Dernière intervention
17 décembre 2008
3
dailleurs dans le premier bloc de mon précedent message, il ne sagit pas de requetes mais seulement des valeurs ainsi que des actions a executer.
la partie "mettre ca dans une requete c'est ok", c juste la variable $data, le bloc compressé qui...enfin vous savez
Messages postés
870
Date d'inscription
mardi 11 mars 2008
Statut
Membre
Dernière intervention
10 juillet 2011
58
C'est en effet embêtant que tu puisses pas modifier le contenu de la chaîne :) (au fait, c'est pas plutôt \" ? ) sinon j't'aurais recommandé les regexp :s.

Je crains de pas avoir d'idée pour t'aider, désolé^^
Messages postés
51
Date d'inscription
mardi 13 mai 2008
Statut
Membre
Dernière intervention
17 décembre 2008
3
tant pis, mais c toujours sympa de voir des mecs chercher pour dautres
eh questceque que regexp?
Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
893 >
Messages postés
51
Date d'inscription
mardi 13 mai 2008
Statut
Membre
Dernière intervention
17 décembre 2008

tu fais un addslashes()


$variable=addslashes(ton_texte);
Messages postés
870
Date d'inscription
mardi 11 mars 2008
Statut
Membre
Dernière intervention
10 juillet 2011
58 >
Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017

oui, mais le addslashes modifie le contenu^^ or il vaut mieux éviter d'après ixce

les regexp, ou regular expression (si j'me plante pas :D), sont des fonctions "hyper puissantes" pour modifier tes chaînes de caractères:
preg_match()
preg_replace()
split()

un coup d'oeil sur le site de php te diras comment t'en servir, et surtout, si elles sont utiles dans ton cas ;)