xml地图|网站地图|网站标签 [设为首页] [加入收藏]
变量引用与变量销毁机制详细介绍_php实例_脚本之
分类:编程

php 变量引用与变量销毁机制

Data URL是在本地直接绘制图片,不是从服务器加载,所以节省了HTTP连接,起到加速网页的作用。

php 魔术常量详解

在php中,符号”&”表示引用。

data:image/jpg; 声明数据协议及类型名称 base64, 编码形式为base64 /9j/4AAQSkZ…… base64编码结果

class MoShu{ public function moshu() { echo '当前类名:' . __CLASS__ . "
"; echo '当前方法名:' . __FUNCTION__ . "
"; echo '当前文件中所在的行数:' . __LINE__ . "
"; echo '当前文件绝对路径:' . __FILE__ . "
"; echo '当前文件所在的绝对路径的文件夹:' . __DIR__ . "
"; echo '返回类名::方法名:' . __METHOD__ . "
"; }}$moshu = new moshu;

当前类名:MoShu当前方法名:moshu当前文件中所在的行数:10当前文件绝对路径:D:\xampp\htdocs\test\moshu.php当前文件所在的绝对路径的文件夹:D:\xampp\htdocs\test返回类名::方法名:MoShu::moshu

1、看看不引用的情况是这样子:

Data URL的生成方法:

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

$a = “hello world”;//定义一个变量,下面赋值给$b$b = $a;//这一步没有在$a之前加符号&,像这样子”$b= & $a”。没有加&,实际上原理是会将变量$a复制拷贝一份,也就是内存中重新申请一个地址存储变量$b了

``

ps:在php中,使用”=”直接赋值,其实就是拷贝一份右边的变量给b,会生成一份内存空间,结果可能是同样的内容在内存中两份。在有些关于php性能方面提到,这样子会多占有内存空间。不过我接触中,大部分人没怎么注意,其实一般应用这样子用产生的显着差异并不明显。不会看到什么效果,其实我本人也没经常使用&进行引用,呵呵。只是我觉得,深入了解里面的实现原理,非常有必要。我喜欢关注原理性的东西。

注意:本方法适合于小图片,大图片就不要考虑了,另外IE8以下浏览器不支持这种方法。用这种方法会加重客户端的CPU和内存负担,总之有利有弊。

2、使用符号&进行引用

那么我们如何把网站上的Data URL格式的图片转存成实际图片呢?

$a = “hello world”;$b = & $a;

其实很简单,我们把图片内容就是src部分传到后台,保存即可。

使用引用,php引擎不会拷贝一份变量,其实就是将指针指向了$a在内存中的地址,$b中就是保存了这个指针。所以使用引用的时候,把$b的值改变,$a也会跟着改变

$img_content // 图片内容if (preg_match('/^;base64,)/', $img_content, $result)){ $type = $result[2]; $new_file = "./test.{$type}"; if (file_put_contents($new_file, base64_decode(str_replace($result[1], '', $img_content)))){ echo '新文件保存成功:', $new_file; }}

本文由澳门新葡亰手机版发布于编程,转载请注明出处:变量引用与变量销毁机制详细介绍_php实例_脚本之

上一篇:PHP解压ZIP文件到指定文件夹的方法_php技巧_脚本之 下一篇:thinkPHP中验证码的简单实现方法_php实例_脚本之家
猜你喜欢
热门排行
精彩图文