发布网友 发布时间:2022-04-24 13:54
共5个回答
懂视网 时间:2022-04-06 03:40
php实现静态化的方法:1、改写访问地址,能够通过URL的PATHINFO模式来改动它;2、站点能够在用户访问站点之前就通过一定的程序来进行静态化。
php实现静态化的方法:
PHP站点开发过程中,因为搜索引擎对PHP页面搜鹿和html页面的收录有一定的区别,为了站点的推广或者SEO的须要,要对站点进行一定的静态化。静态化并非页面中没有动画等元素,而是指网页的html代码都在页面中,不须要再去执行PHP脚本等server端的语言,我们能够直接訪问到的网页。这就是静态网页。
有一种方式是改写訪问地址,能够通过URL的PATHINFO模式来改动它。让它看上去更像一个静态页面。从而有更大的几率被搜索引擎抓取和收录,仅是对搜索引擎比較友好,伪静态化。
第二种就是站点能够在用户訪问站点之前就通过一定的程序来进行静态化。生成静态页面。当用户去訪问该页面的时候。因为訪问的是静态页面,因此,訪问速度会比訪问动态页面的速度快了非常多倍,前台的表现是页面载入速度变快,在后台的表现是降低了数据库的连接。降低了数据库的压力,唯一的缺点就是相对占的硬盘多一些,硬盘相对便宜的多。
纯静态化,就是生成HTML文件的方式,我们须要开启PHP自带的缓存机制,即ob_start来开启缓存。而且在ob_start之前不能有不论什么输出,否则运行失败,然后我们用ob_get_contents函数来获取缓存中的内容,该函数会返回一个字符串。第三个函数就是ob_end_clean,它用来清空缓存中的内容而且关闭,成功返回True,失败返回False。
<?php //开启缓存 ob_start(); //第一步连接数据库 $conn = mysqli_connect("localhost","root","","bbs"); //第二步设置对应的字符编码 $setting = 'set names utf8'; mysqli_query($conn,$setting); //第三步进行查询 $sql = 'SELECT * FROM user'; $result = mysqli_query($conn,$sql); //第四步把查询结果转化为一个数组 $rows = mysqli_num_rows($result); $sqldata = array(); for($i = 0;$i <$rows;$i ++){ $sqldata[] = mysqli_fetch_assoc($result); } //然后打印该信息 var_dump($sqldata); //得到生成的html文件,下次訪问就无需訪问数据库了 $msg = ob_get_contents(); ob_end_clean(); //把输出内容放入一个html文件里 $f = fopen("static.html","w"); fwrite($f,$msg); echo "静态化成功";
目录下生成一个html文件
<pre class='xdebug-var-dump' dir='ltr'> <b>array</b> <i>(size=6)</i> 0 <font color='#888a85'>=></font> <b>array</b> <i>(size=4)</i> 'id' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'1'</font> <i>(length=1)</i> 'level' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'0'</font> <i>(length=1)</i> 'name' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'辛星'</font> <i>(length=6)</i> 'pwd' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'bd04fcc97578ce33ca5fb331f42bc375'</font> <i>(length=32)</i> 1 <font color='#888a85'>=></font> <b>array</b> <i>(size=4)</i> 'id' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'2'</font> <i>(length=1)</i> 'level' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'1'</font> <i>(length=1)</i> 'name' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'小倩'</font> <i>(length=6)</i> 'pwd' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'61cb72858be523b9926ecc3d7da5d0c6'</font> <i>(length=32)</i> 2 <font color='#888a85'>=></font> <b>array</b> <i>(size=4)</i> 'id' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'3'</font> <i>(length=1)</i> 'level' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'1'</font> <i>(length=1)</i> 'name' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'小楠'</font> <i>(length=6)</i> 'pwd' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'a3d2de7675556553a5f08e4c88d2c228'</font> <i>(length=32)</i> 3 <font color='#888a85'>=></font> <b>array</b> <i>(size=4)</i> 'id' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'4'</font> <i>(length=1)</i> 'level' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'1'</font> <i>(length=1)</i> 'name' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'刘强'</font> <i>(length=6)</i> 'pwd' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'fcdb06a72af0516502e5fdccc9181ee0'</font> <i>(length=32)</i> 4 <font color='#888a85'>=></font> <b>array</b> <i>(size=4)</i> 'id' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'5'</font> <i>(length=1)</i> 'level' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'1'</font> <i>(length=1)</i> 'name' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'星哥'</font> <i>(length=6)</i> 'pwd' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'866a6cafcf74ab3c2612a85626f1c706'</font> <i>(length=32)</i> 5 <font color='#888a85'>=></font> <b>array</b> <i>(size=4)</i> 'id' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'6'</font> <i>(length=1)</i> 'level' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'1'</font> <i>(length=1)</i> 'name' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'辛勇'</font> <i>(length=6)</i> 'pwd' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'e93beb7663f3320eaa0157730d02dd0c'</font> <i>(length=32)</i> </pre>
相关学习推荐:php编程(视频)
热心网友 时间:2022-04-06 00:48
php静态有伪静态跟单纯静态,伪静态就是在浏览器地址栏上显示一个静态的地址(例如:本来页面是index.php的,通过伪静态方法在地址栏上显示变成index.html),伪静态不是真的生成一个静态文件,此种方法是为了搜索引擎更好的收录。单纯静态就是生成一个单独的html文件,(例如,index.php在伪静态下是不生成index.html文件,但是在纯静态下它是会生成一个index.html文件)。这种方法就是你有多少条新闻,就会生成多少个html新闻页。此种方法一是为了搜索引擎的更好收录,二是可以减轻服务器的压力。热心网友 时间:2022-04-06 02:06
<?php热心网友 时间:2022-04-06 03:41
声明类成员或方法为static,就可以不实例化类而直接访问。不能通过一个对象来访问其中的静态成员
由于静态方法不需要通过对象即可调用,所以伪变量$this在静态方法中不可用
class A{追问静态类有什么好处?我看TP之类的框架好多地方都用静态类。
追答速度快~效率高~ 直接加载到内存·
普通方法 你的方法调用需要先实例化类 然后 这部操作会在 内存中 另开辟空间 来存放
热心网友 时间:2022-04-06 05:32
public static A(){