作者bakedgrass (蒙古烤小草)
看板PHP
标题Re: [请益] php 和商品资讯
时间Thu Dec 3 07:15:26 2020
※ 引述《spong (请输入ID)》之铭言:
: 如果SQL中有商品相关资讯,如:规格、描述...等,要将产品资讯,塞到html中自己设计的
: 卡片区块(div),需要重复建立卡片区块在,在塞入资料?还是可以在php中先连上资料库
: ,用for回圈建立卡片区块,这样画面没有css、bootstrap的辅助,显示出来的网页会不会
: 很丑,还是可以在php中引入css、bootstrape
: 刚学没多久,还请鞭小力一点
基本上比较复杂的网站都是像前面推文说的一样都是MVC架构。
这里用一个简单的单页程式来作例子看怎样把php和前端语法结合在一起。
------------
<?php
/*
这里开始捞资料,内容就省略。一般来说MVC架构会在这里把来自model的资料读出来
而非在这里直接读资料库。但这里为了简洁,假设我们在这里读资料库的内容。
*/
// 把资料存成在阵列里面,等等取用。为了简洁,这里就不考虑其他处理或跳脱。
$products = $mysqli->fetch_all(MYSQLI_ASSOC);
?>
<html>
<head>
<!--内容省略-->
</head>
<body>
<table class="table">
<!-- 你可以把php语法包在小的<?php ?>里面,这样就不会跟HTML混在一起 -->
<?php foreach($products as $product): ?>
<!-- 现在你在回圈内了,这里面的HTML语法都会跟着回圈重复 -->
<tr>
<!--你可以使用<?=?>来当作缩短版的echo来使用-->
<td>
<?=$product["product_name"]?>
</td>
<td>
<!--if的道理也是一样-->
<?php if(!$product['qty']): ?>
<!--PHP语法以外你要怎样套用CSS、bootstrap都可以-->
<span class="badge badge-danger">无库存</span>
<?php endif; ?>
</td>
</tr>
<!-- 没有用括弧记得要用endforeach关闭回圈 -->
<?php endforeach; ?>
</talbe>
</body>
</html>
--------------------------
这样一来你就可以把HTML语法跟PHP结合在一起,渲染各种CSS格式等等。也不会把所有
的HTML语法塞在echo里面,让程式更加可读。
当然这是非常简单的版本,让你了解怎样把PHP的结果用前端语言渲染出来。总有一天
你学得深了,或是有真正实务上的需求了,就会知道上面范例不是真正良好的示范,但
那是後话了。
希望这样对你有帮助。
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 70.71.184.148 (加拿大)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/PHP/M.1606950928.A.1E4.html
※ 编辑: bakedgrass (50.67.17.136 加拿大), 12/03/2020 13:08:16
1F:嘘 powyo: 这写法也太古老了吧 12/04 10:51
2F:推 gpmm: 推一个热心分享 12/05 23:33
3F:推 GALINE: 与其说古老,我觉得更像是让PHP做原本设计的任务:样版引擎 12/08 11:06
4F:→ newversion: <?= 这写法要小心用。 short open tag 不一定开 12/09 04:21
5F:→ bakedgrass: 谢谢大家的回馈 12/09 11:27
6F:→ bakedgrass: <?= 在官方文件里面好像是被归类成normal tag 12/09 11:28
8F:→ newversion: 5.4.0 後才改的, 避免踩雷尽量不要用 12/10 00:45
9F:→ bakedgrass: 谢谢建议 12/10 05:42
10F:→ bakedgrass: 我有看过一些相关的争议,也有人觉得可以放心使用。但 12/10 05:43
11F:→ bakedgrass: 我会记得你的建议 12/10 05:43
12F:推 mohai: PHP 全衔不是超文字预处理器吗?这样写到底哪里古老了 12/11 12:06
13F:推 Kenqr: 5.3是11年前的版本 就算真的需要支援还是可以从设定开启 12/13 20:27
14F:→ Kenqr: 所以这写法是很安全的 12/13 20:27
15F:推 Dinjang: 可以用 PHP7以下的都该升了 12/14 14:58
16F:推 MangoTW: 古老吗 可以去了解一下 Personal Home Page 问世的意义 02/21 18:35