将论坛帖子内容中的 smilies 表情转换为正常图片显示
不久前,在调用论坛回帖内容时遇到了 smilies 表情图片为 {:4_267:} ,下面说说解决方式。
在服务端时用正则将论坛(以Discuz7.2为例)帖子内容中的 smilies 图格式化成图片标签格式,然后在标签上附加上属性,以便于在视图中使用JS处理。
当然,这个可以自己去优化一下,这里起初是为了实现正常显示图片的目的。
foreach($postList as $key=>$val) { $message = preg_replace('/<i class="pstatus">.*?(\s|(<br>))*/is', '', $val['message']); //去除 本帖最后由 XX 于 2014-11-6 15:25 编辑 //...省略其他code //论坛回帖内容中的 表情图片 $message = preg_replace('/\{\:(\d)_(\d+)\:\}/im', '<img class="smilies_n lazy" src="/static/imghw/default1.png" data-src="http://domain/forumdata/cache/smilies_var.js" reltype="\\1" relid="\\2" style="max-width:90%" style="display:none;" alt="将论坛帖子内容中的 smilies 表情转换为正常图片显示" >', $message); $postList[$key]['message'] = trim($message); }</i>
接下来在视图中引入 smilies_var.js文件
<script type="text/javascript"></script>
这个JS文件的内容大概如下
var smthumb = '20'; var smilies_type = new Array(); smilies_type[4] = ['炮炮兵', 'dabing'];smilies_type[5] = ['柏夫', 'bofu']; var smilies_array = new Array(); smilies_array[4] = new Array(); smilies_array[4][1] = [['267', '{:4_267:}','dabing63.gif','20','20','50'],['248', '{:4_248:}','dabing65.gif','20','20','50'],['247', '{:4_247:}','dabing69.gif','20','20','50'],['246', '{:4_246:}','dabing39.gif','20','20','50'],['245', '{:4_245:}','dabing05.gif','20','14','50'],['244', '{:4_244:}','dabing45.gif','20','20','50'],['243', '{:4_243:}','dabing16.gif','20','20','50'],['242', '{:4_242:}','dabing67.gif','20','16','50'],['241', '{:4_241:}','dabing02.gif','10','20','25'],['240', '{:4_240:}','dabing60.gif','20','17','50'],['239', '{:4_239:}','dabing46.gif','20','20','50'],['238', '{:4_238:}','dabing56.gif','20','20','50'],['237', '{:4_237:}','dabing34.gif','20','20','50'],['236', '{:4_236:}','dabing06.gif','20','20','50'],['235', '{:4_235:}','dabing10.gif','20','20','50'],['234', '{:4_234:}','dabing04.gif','20','20','50'],['233', '{:4_233:}','dabing11.gif','20','20','50'],['249', '{:4_249:}','dabing14.gif','10','20','25'],['250', '{:4_250:}','dabing54.gif','20','20','50'],['266', '{:4_266:}','dabing38.gif','20','20','50'],['265', '{:4_265:}','dabing17.gif','20','20','50'],['264', '{:4_264:}','dabing66.gif','20','20','50'],['263', '{:4_263:}','dabing64.gif','20','16','50'],['262', '{:4_262:}','dabing18.gif','20','20','50'],['261', '{:4_261:}','dabing68.gif','20','20','50'],['260', '{:4_260:}','dabing47.gif','20','20','50'],['259', '{:4_259:}','dabing41.gif','20','20','50'],['258', '{:4_258:}','dabing51.gif','20','20','50'],['257', '{:4_257:}','dabing52.gif','20','20','50'],['256', '{:4_256:}','dabing40.gif','20','20','50'],['255', '{:4_255:}','dabing50.gif','20','20','50'],['254', '{:4_254:}','dabing08.gif','20','19','50'],['253', '{:4_253:}','dabing58.gif','20','20','50'],['252', '{:4_252:}','dabing25.gif','20','20','50'],['251', '{:4_251:}','dabing57.gif','20','15','50'],['232', '{:4_232:}','dabing29.gif','20','20','50'],['231', '{:4_231:}','dabing31.gif','20','20','50'],['212', '{:4_212:}','dabing03.gif','20','20','50'],['211', '{:4_211:}','dabing01.gif','20','20','50'],['210', '{:4_210:}','dabing71.gif','20','20','50']]; smilies_array[4][2] = [['209', '{:4_209:}','dabing55.gif','20','17','50'],['208', '{:4_208:}','dabing53.gif','20','20','50'],['207', '{:4_207:}','dabing22.gif','20','20','50'],['206', '{:4_206:}','dabing28.gif','20','20','50'],['205', '{:4_205:}','dabing36.gif','20','20','50'],['204', '{:4_204:}','dabing48.gif','20','20','50'],['203', '{:4_203:}','dabing42.gif','20','20','50'],['202', '{:4_202:}','dabing12.gif','20','20','50'],['201', '{:4_201:}','dabing33.gif','20','20','50'],['200', '{:4_200:}','dabing20.gif','20','20','50'],['199', '{:4_199:}','dabing44.gif','20','20','50'],['198', '{:4_198:}','dabing23.gif','20','20','50'],['197', '{:4_197:}','dabing07.gif','20','20','50'],['213', '{:4_213:}','dabing43.gif','20','20','50'],['214', '{:4_214:}','dabing72.gif','20','20','50'],['230', '{:4_230:}','dabing19.gif','20','20','50'],['229', '{:4_229:}','dabing59.gif','20','20','50'],['228', '{:4_228:}','dabing27.gif','20','20','50'],['227', '{:4_227:}','dabing21.gif','20','20','50'],['226', '{:4_226:}','dabing30.gif','20','20','50'],['225', '{:4_225:}','dabing24.gif','20','20','50'],['224', '{:4_224:}','dabing13.gif','20','20','50'],['223', '{:4_223:}','dabing37.gif','20','20','50'],['222', '{:4_222:}','dabing62.gif','19','20','46'],['221', '{:4_221:}','dabing70.gif','20','20','50'],['220', '{:4_220:}','dabing09.gif','20','20','50'],['219', '{:4_219:}','dabing15.gif','16','20','39'],['218', '{:4_218:}','dabing61.gif','20','20','50'],['217', '{:4_217:}','dabing26.gif','20','20','50'],['216', '{:4_216:}','dabing35.gif','20','20','50'],['215', '{:4_215:}','dabing49.gif','20','20','50'],['196', '{:4_196:}','dabing32.gif','20','20','50']]; smilies_array[5] = new Array(); ...
这里使用的是 jQuery来操作
var baseSrc = 'http://domain/images/smilies/'; //smilies_var.js中的图片存放地址 var OSmilies = $('.smilies_n'); //所有class名为 .smilies_n 标签 var i, flag, OEle, OAttr, OId, OName, OArr; for(i=0;i<osmilies.length flag="false;" if undefined continue oele="$(OSmilies[i]);" oattr="OEle.attr('reltype');//标签的属性值" oid="parseInt(OEle.attr('relid'));" smilies_type smilies_array oname="smilies_type[OAttr][1];" dabing oarr="smilies_array[OAttr];" for break oele.attr basesrc oele.show><br>以上就可以对论坛内容中的表情图片转换,关于其他的BbCode后续整理了再发。<br> <p> 以上就介绍了将论坛帖子内容中的 smilies 表情转换为正常图片显示,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。</p> <p> </p> </osmilies.length>

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

La façon de mettre à jour les échanges de recours varie selon la plate-forme et l'appareil: mobile: vérifiez les mises à jour et installez dans l'App Store. Client de bureau: vérifiez les mises à jour dans le menu d'aide et installez automatiquement. Page Web: Vous devez accéder manuellement au site officiel pour les mises à jour. Le défaut de mise à jour de l'échange peut entraîner des vulnérabilités de sécurité, des limitations fonctionnelles, des problèmes de compatibilité et une réduction de l'efficacité de l'exécution des transactions.

Gate.io fournit une application mobile officielle qui permet aux utilisateurs de télécharger la version Android via les étapes suivantes: Visitez le site officiel, cliquez sur le bouton "Télécharger", sélectionnez l'option "Android", scannez le code QR ou cliquez sur "Google Player " lien. Actuellement, Gate.io ne fournit pas une application mobile iOS officielle.

À mesure que le marché de la monnaie numérique s'épanouit, l'achat et la vente d'actifs numériques sont devenus plus faciles que jamais. Cet article met en évidence les dix premiers logiciels de trading de devises numériques en 2025 qui peuvent aider les traders à participer facilement et en toute sécurité à participer au marché des devises numériques. Nous évaluons ces logiciels en fonction de la convivialité, des mesures de sécurité, des frais et d'autres facteurs clés pour fournir un guide complet pour prendre des décisions éclairées.

La prévision de prix de PEPU Coin pour 2025 est basée sur une analyse complète de la modélisation technique, fondamentale, consensuelle et statistique. Le modèle de prévision prend en compte des facteurs tels que le sentiment du marché, l'environnement réglementaire, les évolutions technologiques et les facteurs macroéconomiques qui influencent les prix. De plus, PEPU Coin peut être comparé à d’autres crypto-monnaies telles que BTC, ETH, BNB, USDC et XRP pour comprendre son potentiel d’investissement et ses avantages uniques. Une analyse plus approfondie explore également la valeur potentielle de la pièce PEPU, son pouvoir de détention à long terme et sa probabilité d'atteindre 1 $ au cours des 5 prochaines années.

Cet article fournit un guide complet sur les paramètres d'enregistrement et de sécurité des binances, couvrant les préparations de pré-inscription (y compris l'équipement, le courrier électronique, le numéro de téléphone mobile et la préparation des documents d'identité), et introduit deux méthodes d'enregistrement sur le site officiel et l'application, ainsi que différents niveaux de vérification d'identité (KYC). De plus, l'article se concentre également sur les étapes de sécurité clés telles que la configuration d'un mot de passe de fonds, l'activation de la vérification à deux facteurs (2FA, y compris Google Authenticator et SMS Verification) et la mise en place de codes anti-phishing, aidant les utilisateurs à s'inscrire et à utiliser la plate-forme de binance de binance pour les transactions de crypto-monnaie en toute sécurité et pratique. Assurez-vous de comprendre les lois et réglementations pertinentes et les risques de marché avant de négocier et d'investir avec prudence.

Avec le marché des devises virtuels en plein essor, les échanges de crypto-monnaie en Asie augmentent également rapidement. Cet article compile les derniers classements des dix premiers échanges dans le cercle de devises asiatiques en 2025, offrant aux investisseurs une référence faisant autorité pour choisir une plateforme de trading fiable. Le classement est évalué de manière approfondie en fonction de plusieurs dimensions telles que le volume des transactions, la quantité d'actifs, la sécurité et l'expérience utilisateur, visant à aider les investisseurs à sélectionner le meilleur échange qui convient à leurs besoins commerciaux.

À l'ère des actifs numériques, la sécurité des capitaux dépend non seulement de la garantie de sécurité fournie par l'échange, mais nécessite également une protection active du côté utilisateur. Grâce à des portefeuilles matériels, à de multiples authentifications, à un stockage décentralisé et à d'autres mesures, combinés à des habitudes de fonctionnement prudentes, le risque de piratage peut être considérablement réduit et les fonds personnels peuvent être assurés.

Ranking of the top ten virtual digital currency trading apps in 2025: OKX has a strong engine and good risk control; Binance's leading transaction volume and a full ecosystem; Gate.io's old brand is safe and has many currencies; Huobi has a great influence in Asia; Kraken compliance and security; Coinbase is friendly; KuCoin has rich currency; Crypto.com innovative; Bitfinex tools are professional; MEXC is growing fast.
