Home > Backend Development > PHP Tutorial > 替换结构再判断解决办法

替换结构再判断解决办法

WBOY
Release: 2016-06-13 13:29:21
Original
910 people have browsed it

替换结构再判断



改为:

Image:ESIL_xiaoshengqi1.gif

width和height的值是变动的,如果width 如果width > 805 
那么height = height * 805 /width ; 
  width= 805

这个正则加判断怎么写啊?最近用到好多正则,怎么样才能把正则学好呢?


------解决方案--------------------
请说明你的规则

../Documents/medies/ESIL_xiaoshengqi1.gif
这个乍来的


Image:ESIL_xiaoshengqi1.gif 这个呢?



width="550" height=" 400" 这个呢???上面有两个,需要哪个?



------解决方案--------------------
参考一下:

PHP code
$s=<param name="movie" value="/images/1/17/ESIL_xiaoshengqi2.swf"><param name="bgcolor" value="#FFFFFF"><param name="scale" value="exactfit">
<embed src="/images/1/17/ESIL_xiaoshengqi2.swf" width="1000" height="400" bgcolor="#FFFFFF" scale="exactfit" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed> 
html;

$r= preg_replace('#.+<embed>]*>.+#s','<img src="../Documents/medies/%242" alt="Image:$2"    style="max-width:90%" height="$4" longdesc="/index.php/Image:$2">',$s);

preg_match('#width="(\d+)"\s*height="(\d+)"#i',$r,$m);
if($m[1]>805){ 
         $h=($m[2]*805)/$m[1] ; 
         $r=preg_replace('/(width=)"(\d+)"(\s*height=)"(\d+)"/s','$1"$2"$3"'.$h.'"',$r);
}
echo $r;
<br><font color="#e78608">------解决方案--------------------</font><br>
<dl class="code">PHP code<pre class="brush:php;toolbar:false">
$s =<param name="movie" value="/images/1/17/ESIL_xiaoshengqi2.swf"><param name="bgcolor" value="#FFFFFF"><param name="scale" value="exactfit">
<embed src="/images/1/17/ESIL_xiaoshengqi2.swf" width="1550" height="400" bgcolor="#FFFFFF" scale="exactfit" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed> 
TXT;
$r= preg_replace_callback('#.+<embed>]*>.+#s', 'back', $s);

function back($r) {
  if($r[3] > 805) {
    $r[4] = round($r[4]*805/$r[3]);
    $r[3] = 805;
  }
  return 
TXT;
}
echo $r; <div class="clear">
                 
              
              
        
            </div></embed>
Copy after login
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template