php在页面内搜索的实现
来源:互联网 发布:英雄联盟官方代练 知乎 编辑:程序博客网 时间:2024/05/17 07:23
整个搜索功能用php的JSON 数据实现
json字符串可以访问https://www.bejson.com/jsoneditoronline/,该网址可以格式化json数据,进行修改。
定义
$s='{"all":[{"academy":"a","name":"信院","content":[{"grade":"1","class":"0","name":"大一","subject":[{"name":"英语","url":""},{"name":"单变量微积分","url":""},{"name":"多变量微积分","url":""},{"name":"线性代数","url":""},{"name":"力学与热学","url":""},{"name":"大学物理基础实验","url":""},{"name":"电路基本理论","url":""},{"name":"电路基本理论实验","url":""},{"name":"计算机程序设计","url":""},{"name":"思想道德基础与法律基础","url":""},{"name":"马克思主义基本原理","url":""},{"name":"数学分析1","url":""},{"name":"数学分析2","url":""}]},{"grade":"2","class":"0","name":"大二","subject":[{"name":"概率论与数理统计","url":""},{"name":"复变函数","url":""},{"name":"电磁学","url":""},{"name":"线性电子线路","url":""},{"name":"数字逻辑电路","url":""},{"name":"大学物理综合实验","url":""},{"name":"线性电子线路实验","url":""},{"name":"数据结构及其算法","url":""},{"name":"中国近现代史纲要","url":""},{"name":"随机过程","url":""},{"name":"光学与原子物理","url":""},{"name":"信号与系统","url":""},{"name":"微机原理与系统","url":""},{"name":"数理方程","url":""},{"name":"数字逻辑电路实验","url":""},{"name":"重要思想概论","url":""}]},{"grade":"3","class":"6","name":"大三","subject":[{"name":"电磁场理论","url":""},{"name":"现代通信原理","url":""},{"name":"信息论A","url":"subject.php?subject=信息论A"}]},{"grade":"3","class":"10","name":"大三","subject":[{"name":"运筹学基础","url":""},{"name":"自动控制原理","url":""}]},{"grade":"3","class":"23","name":"大三","subject":[{"name":"信号与系统实验","url":""},{"name":"非线性电子线路","url":""}]},{"grade":"3","class":"33","name":"大三","subject":[{"name":"英语","url":""},{"name":"单变量微积分","url":""}]},{"grade":"4","class":"6","name":"大四","subject":[{"name":"英语","url":""},{"name":"单变量微积分","url":""}]},{"grade":"4","class":"10","name":"大四","subject":[{"name":"英语","url":""},{"name":"单变量微积分","url":""}]},{"grade":"4","class":"23","name":"大四","subject":[{"name":"英语","url":""},{"name":"单变量微积分","url":""}]},{"grade":"4","class":"33","name":"大四","subject":[{"name":"英语","url":""},{"name":"单变量微积分","url":""}]}]},{"academy":"b","name":"计院","content":[]},{"academy":"c","name":"数院","content":[]}]}';
这个看起来很长,但是用上面的网站编辑会很容易
如图所示
之后
$data=json_decode($s);
就得到PHP变量。
在表单中加入action="s.php" method="post"语句可以上传输入的字符串再跳转到s.php。
之后加入如下代码即可完成搜索(注:表单中input的名字为"s"):
搜索“<?php echo $_POST['s'];?>”的结果:
<ul>
<?php
foreach($data->all as $v_a) //遍历数据
{
foreach($v_a->content as $v_b)
{
foreach($v_b->subject as $v_c)
{
if(strstr($v_c->name,$_POST['s'])) //子串匹配
{
echo '<li><a href="'.$v_c->url.'">'.$v_a->name.'-'.$v_b->name.'-'.$v_c->name.'</a></li>';
}
}
}
}
?>
搜索“信”后结果
可见没有连接数据库依然完成了搜索。
- php在页面内搜索的实现
- 页面搜索框--在页面内实现导航
- 页面内全文搜索
- 如何在页面内实现跳转
- 实现在搜索结果页面中变色显示搜索关键字
- 不用iframe实现在一个页面内加载另一个页面
- 在文件内搜索
- dede在高级搜索页面advancedsearch.php调用自定义字段
- 导航实现页面内的跳转
- 如何在页面内制作一个可以实现'另存为'的链接
- node-webkit:在页面内加载自己的url实现跳转
- iOS 实现在App内打开某个App的AppStore宣传页面
- PHP实现页面的跳转
- 静态页面的搜索实现Jquery
- PHP实现一个简单的计算器(在html页面和php文件之间传值)
- 简单实现在一个页面内上下跳转..
- PHP 文章内链的实现方法
- jQuery实现页面搜索
- 设计模式
- hdu 2045 java 大数
- 统计思维(实例7)——估计
- C Primer Plus 精读(一)
- 数据结构实验之查找七:线性之哈希表
- php在页面内搜索的实现
- SQLNET.ORA 的常见用法
- LeetCode Merge Two Sorted Lists
- 浙工大E--栗酱的数列
- Java练习(6)——十进制转换为2、16进制
- Spring boot 全部默认配置
- 图像的小波变换(一)
- 快捷方式
- matlab串口通信