PHP开发常见问题集锦(一)

作者:王炜
日期:2014年02月18日

1,如果一个图片在ie不可以显示,在其他浏览器显示
可能原因:该图片是CMYK颜色
解决方法:在ps中将其改成RGB颜色

2,window.location.href='http://user.ci123.com/user/mamypoko?app=knowledge&page=2#answer'
用锚点以后页面window.location.href不刷新
解决方法:
加一个随机数
http://user.ci123.com/user/mamypoko?app=knowledge&page=2&r=1.223343#answer

3,foreach($album as $k=>$v){
if($k!='count'){
$ImageUrl[]=$v['photo'];
}
}

这时候发现$ImageUrl 少了一个值
原因0=='count'是成立的
一定要注意字符串和数值的比较

4,想div盖住flash只要 设置flash的wmode 设置成transparent 但是还有一点注意:div里面的任何一个东西都不能设置
background:none,否则给div设置点击事件是不生效的;

5,修复锚点在IE中失效的错误IE下无效,原因未知,可能又是IE的解析错误?
留意到在锚点标签中是没有任何东西的,解决方法就是:在锚点标签里加点什么,空格也行。比如这样:
<div><aname="anything">&nbsp;</a></div>

6,set names utf8
连击数据库的时候编码 这里是utf8而不是utf-8

7,rpc里面写东西 怎么都找不到错误 最后发现有函数写重了

8,由字符串2012-11-12 12:11:15 变  11-12 12-11 不要滥用date  而是 直接substr
9,复制文件的时候一定要注意修改比如:修改$ms ,$db等对象
10, limit  拼接的时候无需加单引号   "select * from A limit {$start},{$end}"
11,小图片能放到1张上去的放到1张上去 ,有可能会使10张 3k的变成1张1k的
12,查找使用strpos($k,$file_name)!==false (注意这里两个不等号)
13,图片尽量的写alt有利于搜索引擎

14,Heredoc写法注意
<?
$t=10;
echo $str=<<<ft
aaaaaa{$t}aaaaa
ft;
?>

开始和结束符号文中不能出现,函数在文中用不了。

15,php中尽量使用rawurlEncode代替urlencode 因为urlencode会把空格转义为+ 前者会转义为20%
<?php
$url='http://www.baidu.com/ index.php';
echo urlencode($url);
echo "\r\n";
echo rawurlencode($url);
//http%3A%2F%2Fwww.baidu.com%2F+index.php
//http%3A%2F%2Fwww.baidu.com%2F%20inde?>

16,
变量未定义或者是null的时候 is_null      结果:true (函数)
变量设置了 isset 就是true (语句)

变量未定义或者是0 或者是空字符串 或者是null empty 结果:true

17,window.open被阻止。
在window.open之前有ajax请求,这时候浏览器出于安全会阻止弹出框弹出。
解决方法:
ajax之前打开一个空窗口,
var pds = window.open('about:blank','newwindow','height=100,width=400,top=100,left=100,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no, status=no');
然后ajax结束再指定窗口位置
pds.location = "http://www.baidu.com";
值得注意的是:如果有alert信息,需要放在打开空窗口之前,否则弹出窗口会失去焦点(有人想用pds.focus()但是IE8不支持这个方法)

欢迎转载,转载请保留链接: https://www.phpzu.com/article/2014/02/18/190.html

留言(2条)

  1. 沙发
    zezeze
    Post:2014-02-18 上午10:17

    学习了,不错

    • zezeze
      Post:2014-02-18 下午4:44

      挺好的嘛。。

发表评论

*

code

2