• [原创整理]PHP+MYSQL的难点记录

    [PHP]
    post by 黄牌网络 / 2011-10-14 14:27 Friday

    一、决断数组是否为空:

    $arr= array("","","");

    if(empty($arr)) echo "空";

    else echo "非空";

    二、PHP替换函数,非正则

    str_replace函数,下面的例子,找到点号替换成空格。

    str_replace(".", "", $arc['resume'][1]);

     三、记录新插入的记录自动ID号是多少。

    函数:mysql_insert_id

    function get_insert_id(){    //最后一次操作关联ID号
    return mysql_insert_id($this->link_id);
    }

    四、PHP htmlspecialchars() 函数

    htmlspecialchars() 函数把一些预定义的字符转换为 HTML 实体。

    预定义的字符是:

        & (和号) 成为 &
        " (双引号) 成为 "
        ' (单引号) 成为 '
        < (小于) 成为 &lt;
        > (大于) 成为 &gt;



        $title=str_replace("&#039;","",$arr["title"]);
        $title= htmlspecialchars_decode($title,ENT_QUOTES);

     

    五、.htaccess中通过设置,用来达到禁止运行指定脚本的运行效果。
    规则内容如下:
    RewriteEngine on  RewriteCond % !^$ 
    RewriteRule uploads/(.*).(php)$ – [F] 
    RewriteRule data/(.*).(php)$ – [F] 
    RewriteRule templets/(.*).(php)$ – [F]

    针对uploads,data,templets 三个目录做了执行php脚本限制;

    多个脚本后缀,写成:.(php|asp|jsp)$

    六、对于一些常用的PHP CMS,验证码突然不显示出来了。

    这种问题遇到过几次,有几次根本就没解决。就DEDE里面,突然验证码显示不了,而服务器环境并没有变。

    其实这种问题不是服务器环境的问题。而是程序的问题。像CMS里最大的问题,就是程序开启了error_reporting(E_ALL),显示所有错误,所以就出现执行时部分未定义的变量名称在error_reporting(E_ERROR | E_WARNING | E_PARSE);时不显示,而在ALL时就会显示的问题。方法是不要设置成ALL即可。

    标签: PHP常用

    发表评论: