1.@extract($_COOKIE); 解出来是会占更多的内存,我是用 $_COOKIE[...] 的;2.ob_start 与浏览器无关,是PHP 的输出缓存。
不知道你说的是不是指 ob_start("ob_gzhandler") ,这个需要浏览器的支持。3.smarty 是公用性的东西要考虑公用的要求,效率不理想,大块头,有能力自己写的就用自己的。4.有些名称是 mysql 是保留字,如 name ,要用这个名称作为表名或字段名,要用 `` 引起来,注意不是引号,是键盘 1 左边的那个符号。5.用 cookie 保存的话,为了安全还要从服务器读取验证一次保存的信息。用 session 保存就可以直接使用。6.都是 N 秒钟没刷新,就当你下线了。7. ...8.eval(str) 是把str 当作 PHP 代码来运行。 如 eval("printf('HELLO WORLD!');"); 会输出 HELLO WORLD.9.一般来说,php.ini 中 magic_globals = on 打开, MySQL 查询的时候,变量用 '' 引起,不会出什么问题,例如 select * from table where id='$_GET[id]'10. ...

解决方案 »

  1.   

    1:我看很多人代码这样写道:
    @extract($_COOKIE);
    ===============================================
    为了代码兼容php4点几来着的以前版本.7:关于php中的面向对象
    因为我本身是C++程序员,对面向对象十分了解。
    但是我看到很多的php代码,感觉类的设计都不是非常的好,大家谁能推荐几个比较好的php代码吗?
    最好是国外的。
    ================================================
    你看过什么php 代码? 有哪些不好的地方?
    推荐上 sf.net  上面有很多PHP开源的代码写的相当优秀. 语言只是工具.能达到目的就OK. 不一定都需要面向对象.
    10:对了,php有什么比较好的服务器调试平台,即我可以动态调试。
    类似C#那样的。
    =================================================
    PHP的调试都推荐用 Browse + Server  方式调试.即正式的SERVER环境.
    不是正式开发.我比较习惯用 记事本(或者 EditPlus)+ 浏览器来调试.
    PHP项目对代码要求是相当精细的,所以,手写代码更适合. 所以,编辑器也就没所谓了.
      

  2.   

    PHP的调试我基本上都是用EditPlus+ 浏览器,模板用DW来打的
      

  3.   

     学习
    --------------------------------1:我看很多人代码这样写道:
    @extract($_COOKIE);我就不明白了,为什么一定要解出来呢?解出来不是会占用更多的内存吗?
    直接使用_COOKIE数组不好吗?
    =================================
    不好的地方如你所说,但我觉得好处有两个,
    代码书写简短。
    不直接使用$_COOKIE,避免cookie直接被修改。3:出现了smarty,为什么还要自己做模版管理呢?
    看文档,说smarty快被官方支持了,而且我用了一下感觉还可以。
    但是譬如discuz,却使用自己的模版管理,我觉得像discuz这样的,可能是因为历史原因。
    可是为什么我看到很多其他的代码都是使用自己的模版呢?
    难道是因为效率?因为我看了smarty每个变量都需要assign一下,所以可能内存占用也比较大吧?
    ==========================================
    我反问你:出了PHP,为什么还要用ASP.net JSP。
    smarty 只是模板规范下的一种模型,当然自己也可以建立一套模型。5:我看很多代码每次访问用户信息的时候都是实时读取,
    为什么大家不把自己的用户信息缓存起来,是不是害怕用户在多个地方登陆??
    ======================
    为什么要缓存?
    个人信息本来是关键数据,应该动态查询的sample:去银行存1w元,一查余额,¥0!银行答复:系统缓存中,等着明天更新吧
      

  4.   

    关于4首先,是`不是',mysql里为了避免关键字冲突而加
      

  5.   

    我也是初学php
    关于samrty,我使用了大量的register_function来注册函数用,会不会影响效率?在模板标记没有应用到这些函数的时候register_function注册的函数会不会执行?
    因为如果用这样assign('functionname',functionname());来取数据的话,就算模板里没有调用标记{$functionname}也会执行functionname()函数,对效率不好,register_function方式的会不会呢?
      

  6.   

    sample:去银行存1w元,一查余额,¥0!银行答复:系统缓存中,等着明天更新吧
    ==============
    哈哈..
      

  7.   

    4.有些名称是 mysql 是保留字,如 name ,要用这个名称作为表名或字段名,要用 `` 引起来,注意不是引号,是键盘 1 左边的那个符号。
    ===========
    这个有点模糊的答案6.都是 N 秒钟没刷新,就当你下线了。
    ===========
    用settimtout刷新一个非常小的页面,这个页面什么都没有,就操作的是时间,之后立刻关闭,也可以进行统计。ajax好像就是这么做的。你看过什么php 代码? 有哪些不好的地方?
    推荐上 sf.net 上面有很多PHP开源的代码写的相当优秀. 语言只是工具.能达到目的就OK. 不一定都需要面向对象.
    ==================
    php可以面对对象的。但是,php的结构,很多时候,用面对对象的方式,不好解释。模板都是面对对象产生的吧?
    PHP的调试都推荐用 Browse + Server 方式调试.
    ==========================
    这话太多了!!
    关于samrty,我使用了大量的register_function来注册函数用,会不会影响效率?在模板标记没有应用到这些函数的时候register_function注册的函数会不会执行?
    因为如果用这样assign('functionname',functionname());来取数据的话,就算模板里没有调用标记{$ functionname}也会执行functionname()函数,对效率不好,register_function方式的会不会呢?
    ====================================
    session的大小是有限制的,请不要注册太多session。倒不是session影星速度。主要是你服务器的内存有限制啊!
      

  8.   

    register_function是在smarty語法中注冊函數的語法,為什麼會用到session?
    不用register_function怎以做到可以給函數傳值?
      

  9.   

    1:@extract($_COOKIE);
    -----------------------
    还可以:@extract($_POST);  @extract($_GET);等
    8、关于eval
    -----------------------
    <?php
    $a=1;
    if($a==1)
      $run='fseek($fp,10);$text=fread($fp,1024)';
    elseif($a==2)
      $run='fseek($fp,10);$text=fgets($fp)';
    //...假如还有很多复杂代码或判断条件
    else
      $run='fseek($fp,10);fwrite($fp,"xyz")';if($fp=@fopen("某数据文件","rb+")){
      //这时你可以将预置的eval植入,进而节省了占用打开数据文件的时间
      eval($run);
      //...
      fclose($fp);
    }
    ?>
    6:如何精确统计在线时间啊?
    --------------------------
    有很多方法可用,不是一二句能表清,建议先搜搜相关
      

  10.   

    楼主说的问题,php文档写的很明白,实在是不明白可以看在线文档后面的用户评论那些东西也是很有用的