如何通过
PHP将身体或网站html中的整个数字替换为波斯数字?
我想替换我网站上所有页面的所有数字.
我想替换我网站上所有页面的所有数字.
码:
function ta_persian_num($string) { //arrays of persian and latin numbers $persian_num = array('۰','۱','۲','۳','۴','۵','۶','۷','۸','۹'); $latin_num = range(0,9); $string = str_replace($latin_num,$persian_num,$string); return $string; }
我的代码适用于客户端:
<script> $(document).ready(function(){ persian={0:'۰',1:'۱',2:'۲',3:'۳',4:'۴',5:'۵',6:'۶',7:'۷',8:'۸',9:'۹'}; function traverse(el){ if(el.nodeType==3){ var list=el.data.match(/[0-9]/g); if(list!=null && list.length!=0){ for(var i=0;i<list.length;i++) el.data=el.data.replace(list[i],persian[list[i]]); } } for(var i=0;i<el.childNodes.length;i++){ traverse(el.childNodes[i]); } } traverse(document.body); }); </script>
您最好将此功能移至前端使用javascript:
<script type="text/javascript"> var replaceDigits = function() { var map = ["&\#1776;","&\#1777;","&\#1778;","&\#1779;","&\#1780;","&\#1781;","&\#1782;","&\#1783;","&\#1784;","&\#1785;"] document.body.innerHTML = document.body.innerHTML.replace(/\d(?=[^<>]*(<|$))/g,function($0) { return map[$0]}); } window.onload = replaceDigits; </script>
例如:https://codepen.io/anon/pen/rQWGRd
或者您可以在所有页面上加载的任何js文件中包含此函数.
而且你的body标签应该有一个onload属性,如下所示:
<body onload="replaceDigits()">
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。