Php 将标签更改为图库
我需要将变量中的标记[gallery-1]从数据库替换为实际的gallery。问题是,那个图库是由标签中的那个数字表示的(我有多个图库或类别)。我尝试了stru_replace,但它无法解决数字问题。Php 将标签更改为图库,php,str-replace,Php,Str Replace,我需要将变量中的标记[gallery-1]从数据库替换为实际的gallery。问题是,那个图库是由标签中的那个数字表示的(我有多个图库或类别)。我尝试了stru_replace,但它无法解决数字问题。 我需要获取该数字,从库号X中选择图像,然后回显它们(根据该数字替换为内容)。如果要从字符串[gallery-1](包括括号)中获取整数,请尝试以下操作: $gallery = '[gallery-1]'; echo preg_replace('/\[gallery-(\d+)\]/', '$1',
我需要获取该数字,从库号X中选择图像,然后回显它们(根据该数字替换为内容)。如果要从字符串
[gallery-1]
(包括括号)中获取整数,请尝试以下操作:
$gallery = '[gallery-1]';
echo preg_replace('/\[gallery-(\d+)\]/', '$1', $gallery);
你的朋友是:
$code = "<p>Test...test...test...</p> [gallery-1]";
preg_match_all("/\[gallery-(\d+)\]/", $code, $matches);
$galleries = array();
foreach ($matches[1] as $id) {
$galleries[$id] = // Somehow load a gallery basing on id;
}
foreach ($galleries as $id => $c) {
$code = str_ireplace("[gallery-" . $id . "]", $c, $code);
}
echo $code;
$code=“测试…测试…测试…[gallery-1]”;
preg_match_all(“/\[gallery-(\d+)\]/”,$code,$matches);
$gallers=array();
foreach($id与[1]匹配){
$galleries[$id]=//以某种方式根据id加载库;
}
foreach($id=>$c){
$code=str_-ireplace(“[gallery-”$id.]”,$c,$code);
}
echo$代码;
如果您仍然被确认,这里是。
str_replace('gallery-','',$gallery)代码>应在不使用括号的情况下工作当使用preg*路线时,最好使用\d,因此preg_替换('/[gallery-(\d+)]/','$1',$gallery);你是说foreachforeach
?这个看起来不错,但不起作用。因为这里应该是foreach吗??和$画廊=[];不太管用。我将其更改为$gallers=array(),但它不返回任何内容。我个人不知道,第二个foreach是如何工作的(有3个变量),应该有问题(或者我完全搞错了)。另外,stru-ireplace
需要改成$code=str-ireplace(“[gallery-”$id.]”,$c,$code”)
@ßluray、$id
和$c
代表数组中项目的键和值。@FelipeFrancisco,是的,有了这个小小的更新,它现在运行得很好