[asp]代码库---------已知 [field:softlinks/]标签可调出如下数据:
{dede:link text='网址名1'} http://网址1 {/dede:link}
{dede:link text='网址名2'} http://网址2 {/dede:link}
...
{dede:link text='网址名n'} http://网址n {/dede:link}
------------想要显示的内容:
...
-----------参考代码
[field:softlinks runphp='yes']
$link = array_filter(explode('{/dede:link}',@me ),"filter");
$len = count( $link );
for( $i=0;$i< $len-1;$i++ )
{
$tpattern="/{dede:link text='(.*)'}/i";
$ppattern="/'}(.*)/i";
preg_match_all($tpattern,$link[$i],$title);
preg_match_all($ppattern,$link[$i],$path);
echo ''.$title[1][0].'';
}
function filter($var)
{
if($var == '' || $var ==' ')
{
return false;
}
return true;
}
[/field:softlinks]
---------这个写的有问题 怎么修改
想尽量在一个 [field:softlink php处理中 调出结果 里边应该用到 循环匹配 一次调用的 网址 网址名数据 并插入到要实现的格式中
我稍微改了下
[field:softlinks runphp='yes']
preg_match_all('/=\'(.+?)\'} (.+?) {/sim', @me, $strResult, PREG_PATTERN_ORDER);
$a=$strResult[1][0];
$b=$strResult[2][0];
[/field:softlinks]
不过这是第 0条数据 要取 {/dede:link}数据出现的次数 然后 i++循环下 这个不会写
固定的写法 但这样 循环次数就固定成4组了
[field:softlinks runphp='yes']
preg_match_all('/=\'(.+?)\'} (.+?) {/sim', @me, $strResult, PREG_PATTERN_ORDER);
@me= '
' ;
[/field:softlinks]
[field:softlinks runphp='yes']
preg_match_all('/=\'(.+?)\'} (.+?) {/sim', @me, $strResult, PREG_PATTERN_ORDER);
$aaa=array();
for($p=0;$p
}
$aaa=implode('',$aaa);
@me=$aaa;
[/field:softlinks]