以下是mysql数据库的某表结构和其第一条数据『字段名称为汉字』
序号 | 产品详情 | 产品图片 | 动作要领图示 | 价格 | 厂家名称 | 厂家地址 | 联系电话 | 产品链接 | 产品介绍 | 使用说明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | 跑步机 | 1.jpg | 2.jpg#3.jpg#4.jpg | 20元 | 厂家名称 | 厂家地址 | 联系电话 | 网址a | 跑步机的产品介绍文字 | 跑步机的使用说明 |
以下是现有PHP代码,用于导出上表内容为json格式
$columns = array(
array( 'db' => '序号', 'dt' => 0 ),
array( 'db' => '产品详情', 'dt' => 1 ),
array( 'db' => '产品图片', 'dt' => 2 ),
array( 'db' => '动作要领图示', 'dt' => 3 ),
array( 'db' => '价格', 'dt' => 4 ),
array( 'db' => '厂家名称', 'dt' => 5 ),
array( 'db' => '厂家地址', 'dt' => 6 ),
array( 'db' => '联系电话', 'dt' => 7 ),
array( 'db' => '产品名称', 'dt' => 8 ),
array( 'db' => '产品介绍', 'dt' => 9 ),
array( 'db' => '使用说明', 'dt' => 10 ),
);
echo json_encode(
SSP::simple( $_GET, $sql_details, $table, $primaryKey, $columns )
);
导出的json数据如下:
{
"data": [
[
1,
"跑步机",
"1.jpg",
"2.jpg#3.jpg#4.jpg",
"20元",
"厂家名称",
"厂家地址",
"联系电话",
"网址a",
"跑步机的产品介绍文字",
"跑步机的使用说明"
]
]
}
{
"data": [
[
1,
"<span class='tooltips' data-title='跑步机' data-content='<B>生产日期:</B>2020/04/24<br><B>出厂日期:</B>2020/05/24<br><B>规格:</B>20KG<br>' data-placement='right'>产品详情</span>",
"<div class='imgs' data-imgurl='l.jpg'><a data-fancybox='Image' class='fancybox-caption__body' data-caption='跑步机<br>跑步机的产品介绍文字' href='l.jpg'>产品图片</a></div>",
"<a data-fancybox='sample-image' class='fancybox-caption__body' data-caption='跑步机<br><br>跑步机的产品介绍文字<span>跑步机的使用说明</span>' href='2.jpg'>动作要领<img class='smallpic' src='2.jpg' /></a><a data-fancybox='sample-image' class='fancybox-caption__body' data-caption='跑步机<br><br>跑步机的产品介绍文字<span>跑步机的使用说明</span>' href='3.jpg'>动作要领<img class='smallpic' src='3.jpg' /></a><a data-fancybox='sample-image' class='fancybox-caption__body' data-caption='跑步机<br><br>跑步机的产品介绍文字<span>跑步机的使用说明</span>' href='4.jpg'>动作要领<img class='smallpic' src='4.jpg' /></a>",
"<a target='_blank' href='网址a'>产品链接</a>"
]
]
}
<?php
$columns = array(
array( 'db' => '序号', 'dt' => 0 ),
array( 'db' => '产品详情', 'dt' => 1 ),
array( 'db' => '产品图片', 'dt' => 2 ),
array( 'db' => '动作要领图示', 'dt' => 3 ),
array( 'db' => '价格', 'dt' => 4 ),
array( 'db' => '厂家名称', 'dt' => 5 ),
array( 'db' => '厂家地址', 'dt' => 6 ),
array( 'db' => '联系电话', 'dt' => 7 ),
array( 'db' => '产品名称', 'dt' => 8 ),
array( 'db' => '产品介绍', 'dt' => 9 ),
array( 'db' => '使用说明', 'dt' => 10 ),
);
//echo json_encode( SSP::simple( $_GET, $sql_details, $table, $primaryKey, $columns )); //只需要把这个改成以下的方式即可
$result_temp=SSP::simple( $_GET, $sql_details, $table, $primaryKey, $columns );
//然后循环
$result=array();
foreach($result_temp as $key=>$val){
$fleimg=explode("#",$val['动作要领图示'])
$imgstr='';
foreach($fleimg as $k=>$v){
$imgstr=$imgstr+"<a data-fancybox='sample-image' class='fancybox-caption__body' data-caption='".$val['产品介绍'].$val['使用说明']."' href='".$v."'>动作要领<img class='smallpic' src='".$v."' /></a>";
}
$result[]=array($val['序号'], "<span class='tooltips' data-title='".$val['产品详情']."' data-content='".$val['产品介绍']."' data-placement='right'>产品详情</span>","<div class='imgs' data-imgurl='".$val['产品图片']."'><a data-fancybox='Image' class='fancybox-caption__body' data-caption='".$val['产品介绍']."' href='".$val['产品图片']."'>产品图片</a></div>",$imgstr,"<a target='_blank' href='网址a'>产品链接</a>")
}
echo json_encode($result);
?>
具体的,你再根据你自己的内容修改最后的显示结果吧,主要就是把json_encode( SSP::simple( $_GET, $sql_details, $table, $primaryKey, $columns ))分成
$result_temp= SSP::simple( $_GET, $sql_details, $table, $primaryKey, $columns )
和echo json_encode($result); 来进行处理
叫兽的这个回答并不能解决我的问题哈,我需要的是具体代码啊。。。不过还是谢谢你。
$columns = array(
array( 'db' => '序号', 'dt' => 0 ),
array( 'db' => '产品详情', 'dt' => 1 ),
array( 'db' => '产品图片', 'dt' => 2 ),
array( 'db' => '动作要领图示', 'dt' => 3 ),
array( 'db' => '价格', 'dt' => 4 ),
array( 'db' => '厂家名称', 'dt' => 5 ),
array( 'db' => '厂家地址', 'dt' => 6 ),
array( 'db' => '联系电话', 'dt' => 7 ),
array( 'db' => '产品名称', 'dt' => 8 ),
array( 'db' => '产品介绍', 'dt' => 9 ),
array( 'db' => '使用说明', 'dt' => 10 ),
);
$arr = SSP::simple( $_GET, $sql_details, $table, $primaryKey, $columns );
$arr2 = [];
foreach ($arr as $v){
$imgs = explode('#',$v[3]);
$imgstr = '';
for($i=0; $i<count($imgs); $i++){
$imgstr .= "<a data-fancybox='sample-image' class='fancybox-caption__body' data-caption='{$v[0]}<br><br>{$v[9]}<span>{$v[10]}</span>' href='{$imgs[$i]}'>动作要领<img class='smallpic' src='{$imgs[$i]}' /></a>";
}
$newarr = [
$v[0],
"<span class='tooltips' data-title='{$v[1]}' data-content='<B>生产日期:</B>2020/04/24<br><B>出厂日期:</B>2020/05/24<br><B>规格:</B>20KG<br>' data-placement='right'>产品详情</span>",
"<div class='imgs' data-imgurl='{$v[2]}'><a data-fancybox='Image' class='fancybox-caption__body' data-caption='{$v[0]}<br>{$v[9]}' href='{$v[1]}'>产品图片</a></div>",
$imgstr,
"<a target='_blank' href='{$v[8]}'>产品链接</a>"
];
$arr2[] = $newarr;
}
echo json_encode($arr2);
这个按照正常的json输出数据就可以,对比一下你那部分json少了一些html标签,可以这样做,
PHP中嵌入HTML有多种方式,这里列出几种常用方式:
1、用echo输出HTML代码<?php
$int=rand(0,1);
if($int==1){
echo "
取到的随机数是1
";
}else{
echo "
取到的随机数不是1
";
}
?>
2、HTML代码中嵌入PHP
这样可以在大段大段的html代码的各个需要执行php的地方添加代码了。
Hello World
echo "Hello world!这是正文";
?>
3、使用(<<
这是在PHP168的模板代码中首次见到的<?php
print <<
{$label[deepblue_mainslide]}
{$label[deepblue_mainh1]}
{$label[deepblue_maint1]}
{$label[deepblue_maint2]}
$rs[name]
EOT;
?>
4、直接引用HTML文件进PHP中
一个HTML文件(test.html),主要代码为:
我是一段Html代码
使用php的include()函数将外部的HTML文件连接到PHP文件中<?php
include ("test.html");
?>
如果有帮助记得采纳哦!