首頁 > 後端開發 > php教程 > php的正则闭包500错误!快来看看啊!!

php的正则闭包500错误!快来看看啊!!

WBOY
發布: 2016-06-06 20:28:31
原創
1093 人瀏覽過

PHP求助!

<code>function str_emoji($str){
  function empic($h){
    $p=dechex(str_replace(array('',';'),'',$h));
    return '<img src="'.%24_POST%5B'face'%5D.%24p.'.png" alt="'.$h.'" class="smiley">';
  };
  $str=preg_replace('#(\&\#[0-9]{6}\;)#ie','empic("\\1")',$str);
  return $str;
};
$com_print=str_emoji('aaa🐛🐍bbb');</code>
登入後複製
登入後複製

在我的网站中这段代码是报错的,我用的PHP版本是5.3.28
我在SAE中测试是没有问题的,版本是5.3 http://parktest.sinaapp.com/

回复内容:

PHP求助!

<code>function str_emoji($str){
  function empic($h){
    $p=dechex(str_replace(array('',';'),'',$h));
    return '<img src="'.%24_POST%5B'face'%5D.%24p.'.png" alt="'.$h.'" class="smiley">';
  };
  $str=preg_replace('#(\&\#[0-9]{6}\;)#ie','empic("\\1")',$str);
  return $str;
};
$com_print=str_emoji('aaa🐛🐍bbb');</code>
登入後複製
登入後複製

在我的网站中这段代码是报错的,我用的PHP版本是5.3.28
我在SAE中测试是没有问题的,版本是5.3 http://parktest.sinaapp.com/

是不是死循环了????

<code class="php">function str_emoji($str,$cdn){
  function empic($h){
    $p=dechex(str_replace(array('',';'),'',$h));
    return '<img src="'.%24cdn.%24p.'.png" alt="'.$h.'" class="smiley">';
  };
  $str=preg_replace('#(\&\#[0-9]{6}\;)#ie','empic("\\1")',$str);
  return $str;
};

$com_print=str_emoji('aaa🐛🐍bbb',$_POST['face']);</code>
登入後複製

好吧,最后还是要我自己来写答案。

<code>function pic_emoji($str,$cdn){
  return preg_replace_callback(
    '/\&\#[0-9]{6}\;/',
    function ($m) use ($cdn){
      $p=dechex(str_replace(array('',';'),'',$m[0]));
      return '<img src="'.%24cdn.%24p.'.png" alt="'.$m[0].'" class="smiley">';
    },
    $str
  );
};</code>
登入後複製
相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板