wordpress一些常用的常量

ABSPATH :网站根目录的绝对路径
WP_CONTENT_DIR : wp-content目录的磁盘路径
WP_CONTENT_URL :wp-content目录的URL
TEMPLATEPATH : 当前主题所在目录路径
STYLESHEETPATH : 当前主题样式所在目录路径
WP_PLUGIN_DIR : 定义插件目录的磁盘路径
WP_PLUGIN_URL : 定义插件目录的URL
WP_LANG_DIR : 自定义语言包的路径
WP_POST_REVISIONS : 关闭 WordPress 版本修订功能
AUTOSAVE_INTERVAL 定义自动保存的时间

php简单文件上传类

  1. <?php  
  2. header(“Content-Type:text/html; charset=utf-8”);  
  3. if($_POST[‘submit’]){  
  4.     $upfiles = new Upload();  
  5.     $upfiles->upload_file();  
  6. }  
  7. class Upload{  
  8.         /*作者:mckee 来自:www.phpddt.com*/  
  9.     public $upload_name;                    //上传文件名  
  10.     public $upload_tmp_name;                //上传临时文件名  
  11.     public $upload_final_name;              //上传文件的最终文件名  
  12.     public $upload_target_dir;              //文件被上传到的目标目录  
  13.     public $upload_target_path;             //文件被上传到的最终路径  
  14.     public $upload_filetype ;               //上传文件类型  
  15.     public $allow_uploadedfile_type;        //允许的上传文件类型  
  16.     public $upload_file_size;               //上传文件的大小  
  17.     public $allow_uploaded_maxsize=10000000;    //允许上传文件的最大值  
  18.     //构造函数  
  19.     public function __construct()  
  20.     {  
  21.         $this->upload_name = $_FILES[“file”][“name”]; //取得上传文件名  
  22.         $this->upload_filetype = $_FILES[“file”][“type”];  
  23.         $this->upload_tmp_name = $_FILES[“file”][“tmp_name”];  
  24.         $this->allow_uploadedfile_type = array(‘jpeg’,’jpg’,’png’,’gif’,’bmp’,’doc’,’zip’,’rar’,’txt’,’wps’);  
  25.         $this->upload_file_size = $_FILES[“file”][“size”];  
  26.         $this->upload_target_dir=“./upload”;  
  27.     }  
  28.     //文件上传  
  29.     public function upload_file()  
  30.     {  
  31.         $upload_filetype = $this->getFileExt($this->upload_name);  
  32.         if(in_array($upload_filetype,$this->allow_uploadedfile_type))  
  33.         {  
  34.             if($this->upload_file_size < $this->allow_uploaded_maxsize)  
  35.             {  
  36.                 if(!is_dir($this->upload_target_dir))  
  37.                 {  
  38.                     mkdir($this->upload_target_dir);  
  39.                     chmod($this->upload_target_dir,0777);  
  40.                 }  
  41.                 $this->upload_final_name = date(“YmdHis”).rand(0,100).‘.’.$upload_filetype;  
  42.                 $this->upload_target_path = $this->upload_target_dir.“/”.$this->upload_final_name;  
  43.                 if(!move_uploaded_file($this->upload_tmp_name,$this->upload_target_path))  
  44.                     echo “<font color=red>文件上传失败!</font>”;  
  45.             }  
  46.             else  
  47.             {  
  48.                 echo(“<font color=red>文件太大,上传失败!</font>”);  
  49.             }  
  50.         }  
  51.         else  
  52.         {  
  53.             echo(“不支持此文件类型,请重新选择”);  
  54.         }  
  55.     }  
  56.    /** 
  57.     *获取文件扩展名 
  58.     *@param String $filename 要获取文件名的文件 
  59.     */  
  60.    public function getFileExt($filename){  
  61.         $info = pathinfo($filename);  
  62.         return $info[“extension”];  
  63.    }  
  64.       
  65. }  
  66. ?>  
  67. <form enctype=“multipart/form-data” method=“POST” action=“”>  
  68. <input type=“file” name=“file”><input type=“submit” name=“submit” value=“上传”>  
  69. </form>  

smarty调用php常量

  1. {$smarty}保留变量不需要从PHP脚本中分配,是可以在模板中直接访问的数组类型变量,通常被用于访问一些特殊的模板变量。例如,直接在模板中访问页面请求变量、获取访问模板时的时间戳、直接访问PHP中的常量、从配置文件中读取变量等。  
  2.   
  3. 1.在模板中访问页面请求变量  
  4.   
  5. 我们可以在PHP脚本中,通过超级全局数组$_GET、$_POST、$_REQUEST获取在客户端以不同方法提交给服务器的数据,也可以 通 过$_COOKIE或$_SESSION在多个脚本之间跟踪变量,或是通过$_ENV和$_SERVER获取系统环境变量。如果在模板中需要这些数 组,可 以调用Smarty对象中的assign()方法分配给模板。但在Smarty模板中,直接就可以通过{$smarty}保留变量访问这些页面请 求变量。 在模板中使用的示例如下所示:  
  6.   
  7. PHP代码  
  8.   
  9.     1. {$smarty.get.page} {* PHP方式:$_GET[“page”] *}    
  10.   
  11.     2. {$smarty.post.page} {* PHP方式:$_POST[“page”] *}    
  12.   
  13.     3. {$smarty.cookies.username} {* PHP方式:$_COOKIE[“username”] *}    
  14.   
  15.     4. {$smarty.session.id} {* PHP方式:$_SESSION[“id”] *}    
  16.   
  17.     5. {$smarty.server.SERVER_NAME} {* PHP方式:$_SERVER[“SERVER_NAME”] *}    
  18.   
  19.     6. {$smarty.env.PATH} {* PHP方式:$_ENV[“PATH”]*}    
  20.   
  21.     7. {$smarty.request.username} {* PHP方式:$_REQUEST[“username”] *}    
  22.   
  23. 2.在模板中访问PHP中的变量  
  24.   
  25. 在PHP脚本中有系统常量和自定义常量两种,同样这两种常量在Smarty模板中也可以被访问,而且不需要从PHP中分配,只要通过{$smarty}保留变量就可以直接输出常量的值。在模板中输出常量的示例如下所示:  
  26.   
  27. PHP代码         
  28.   
  29.     1. {$smarty.const._MY_CONST_VAL} {* 输出PHP脚本中自定义的常量 *}           
  30.   
  31.     2. {$smarty.const.__FILE__} {* 通过保留变量数组直接输出系统常量 *}  3.其它  
  32.   
  33. PHP代码  
  34.   
  35.     1.{$smarty.now}变量用于访问当前时间戳.     
  36.   
  37.     可以用 date_format调节器格式化输出. 例如{$smarty.now|date_format:“%Y-%m-%d %H:%M:%S”}            
  38.   
  39.     2.{$smarty.const}            
  40.   
  41.     你可以直接访问PHP常量. 例如{$smarty.const._MY_CONST_VAL}            
  42.   
  43.     3.{$smarty.capture}            
  44.   
  45.     可以通过 {capture}..{/capture}结构 截取的输出可以使用{$smarty} 变量访问.          
  46.   
  47.     4.{$smarty.config}            
  48.   
  49.     {$smarty}变量 可以访问已经加载的config变量.            
  50.   
  51.     例如 {$smarty.config.foo}就可以表示 {#foo#}.            
  52.   
  53.     5.{$smarty.section}, {$smarty.foreach}            
  54.   
  55.     {$smarty} 变量可以访问’section’和’foreach’循环的属性.            
  56.   
  57.     6.{$smarty.template} 显示当前被处理的模板的名字.            
  58.   
  59.     7.{$smarty.version}            
  60.   
  61.     显示smarty模板的版本            
  62.   
  63.     8.{$smarty.ldelim} 显示左分隔符            
  64.   
  65.     9.{$smarty.rdelim} 显示右分隔符  

Smarty模板学习入门教程

  1. smarty模版是比较大众化的一个模版,在php开发过程当中被很多开发者视为最友好的模版之一,学习smarty课程对于很多培训机构来说也是列入了培训课程之一,那么很多方面就需要我们学习了  
  2. 一. 安装  
  3. 首先打开网页http://smarty.php.net/download.php,下载最新版本的Smarty。解压下载的文件(目录结构还蛮复杂的)。例如:  
  4. (1) 我在根目录下建立了新的目录learn/,再在learn/里建立一个文件夹smarty/。将刚才解压缩出来的目录的libs/拷贝到smarty/里, 再在smarty/里新建templates目录,templates里新建cache/,templates/,templates_c/, config/,  
  5. (2) 新建一个模板文件:index.tpl,将此文件放在learn/smarty/templates/templates目录下,代码如下:  
  6. <!DOCTYPE HTML PUBLIC “-//W3C//DTDHTML 4.01 Transitional//EN”“http://www.w3.org/TR/html4/loose.dtd”>  
  7. <html>  
  8. <head>  
  9. <metahttp-equiv=“Content-Type” c>  
  10. <title>Smarty</title>  
  11. </head>  
  12. <body>  
  13. {$hello}  
  14. </body>  
  15. </html>  
  16. 新建index.php,将此文件放在learn/下:  
  17. <?php  
  18. //引用类文件  
  19. require ‘smarty/libs/Smarty.class.php’;  
  20. $smarty = new Smarty;  
  21. //设置各个目录的路径,这里是安装的重点  
  22. $smarty->template_dir =“smarty/templates/templates”;  
  23. $smarty->compile_dir =“smarty/templates/templates_c”;  
  24. $smarty->config_dir = “smarty/templates/config”;  
  25. $smarty->cache_dir =“smarty/templates/cache”;  
  26. //smarty模板有高速缓存的功能,如果这里是true的话即打开caching,但是会造成网页不立即更新的问题,当然也可以通过其他的办法解决  
  27. $smarty->caching = false;  
  28. $hello = “Hello World!”;  
  29. //赋值  
  30. $smarty->assign(“hello”,$hello);  
  31. //引用模板文件  
  32. $smarty->display(‘index.tpl’);  
  33. ?>  
  34. (3) 执行index.php就能看到Hello World!了。  
  35. 二. 赋值  
  36. 在模板文件中需要替换的值用大括号{}括起来,值的前面还要加$号。例如{$hello}。这里可以是数组,比如{$hello.item1},{$hello.item2}…  
  37. 而PHP源文件中只需要一个简单的函数assign(var , value)。  
  38. 简单的例子:  
  39. *.tpl:  
  40. Hello,{$exp.name}!Good {$exp.time}  
  41. *.php:  
  42. $hello[name]= “Mr. Green”;  
  43. $hello[time]=”morning”;  
  44. $smarty->assign(“exp”,$hello);  
  45. output:  
  46. Hello,Mr.Green!Good morning  
  47. 三. 引用  
  48. 网站中的网页一般header和footer是可以共用的,所以只要在每个tpl中引用它们就可以了。  
  49. 示例:*.tpl:  
  50. {include file=“header.tpl”}  
  51. {* body of template goes here *}  
  52. {include file=“footer.tpl”}  
  53. 四. 判断  
  54. 模板文件中可以使用if else等判断语句,即可以将一些逻辑程序放在模板里。“eq”,“ne”“neq”“gt”“lt”,“lte”“le”“gte” “ge”,“is even”“is odd”“is not even”“is notodd”“not”“mod”“div by”“evenby”“odd by”,“==”,“!=”,“>”,“<“,“<=”,“>=”这些是if中可以用到的比较。看看就能知道什么意思吧。  
  55. 示例:  
  56. {if $name eq“Fred”}  
  57. WelcomeSir.  
  58. {elseif $name eq“Wilma”}  
  59. WelcomeMa’am.  
  60. {else}  
  61. Welcome,whatever you are.  
  62. {/if}  
  63. 五. 循环  
  64. 在Smarty里使用循环遍历数组的方法是section,如何赋值遍历都是在模板中解决,php源文件中只要一个assign就能解决问题。  
  65. 示例:  
  66. {* this examplewill print out all the values of the $custid array *}  
  67. {secti loop=$custid}  
  68. id: {$custid[customer]}<br>  
  69. {/section}  
  70. OUTPUT:  
  71. id: 1000<br>  
  72. id: 1001<br>  
  73. id: 1002<br>  
  74. 六. 常见问题  
  75. Smarty将所有大括号{}里的东西都视为自己的逻辑程序,于是我们在网页中想插入javascrīpt函数就需要literal的帮忙了,literal的功能就是忽略大括号{}。  
  76. 示例:  
  77. {literal}  
  78. <scrīptlanguage=javascrīpt>  
  79. function isblank(field) {  
  80. if (field.value == )  
  81. return false; }  
  82. else  
  83. {  
  84. document.loginform.submit();  
  85. return true;  
  86. }  
  87. }  
  88. </scrīpt>  
  89. {/literal}  

smarty循环foreach,section实例详解

smarty循环foreach,section实例详解

php里面的数组或者对像都可以有for,foreach,while,list each来循环出来,smarty里面也有这套方法,要不然php的数组对像数据,smarty就不知道怎么把显示出来。习惯的php里面的for,foreach,while的用法,刚一开始的时候,smarty里面循环数组老是忘,好记性不如烂笔头,还是把它记下来才是最好的。下面定界变量符号,我就用默认的大括号了。

一,foreache,foreacheelse,/foreache方法

1,它是section 之外处理循环的另一种方案(根据不同需要选择不同的方案).用于处理简单数组(数组中的元素的类型一致),它的格式比 section 简单许多,缺点是只能处理简单数组.

2foreach 必须和 /foreach 成对使用且必须指定 fromitem 属性.

3foreach可以圈套不过name必须为一

4from 待循环数组的名称,key数组下标,item当前处理元素的变量名称,name该循环的名称,用于访问该循环

5foreachelse 语句在 from 后面的数组对像没有值的时候被执行.

二,section,sectionelse,/section方法

section 用于遍历数组中的数据. section 标签必须成对出现. 必须设置 nameloop 属性. 名称可以是包含字母、数字和下划线的任意组合. 可以嵌套但必须保证嵌套的 name 唯一. 变量 loop (通常是数组)决定循环执行的次数. 当需要在 section 循环内输出变量时,必须在变量后加上中括号包含着的 name 变量. sectionelse 当 loop 变量无值时被执行.

section里面可以带的参数如下

1,name单次循环的名称,必须有的选项

2,loop循环的变量名称,必须有的选项

3,start 循环开始的KEY值 ,默认是从第一个开始,

4,step设置循环的跳跃数,step=2将只遍历下标为0、2、4等的元素.

5,max循环的次数,默认为1,

6,show是不是显示该循环

从上面参数中我们可以看到,没有提到下标,我们经常会用到数组下标。但是smarty里面带的有.

下面的arrayname是section里面的单次循环名称

a,$smarty.section.arrayname.index 数组下标,根foreach 的key差不多

b,$smarty.section.arrayname.index_prev 上次循环的下标 根$smarty.section.arrayname.loop差不多

c,$smarty.section.arrayname.index_next 下次循环的下标

d,$smarty.section.arrayname.iteration 第几次循环了 根rownum一样

e,$smarty.section.arrayname.first 第一次循环

f,$smarty.section.arrayname.last 最后一次循环

g,$smarty.section.arrayname.show 循环是否显示

h,$smarty.section.arrayname.total 总共循环了多少次

section得到数组对像里面的值

{section name=arrayname loop=$array}

{$array[arrayname.index]}{$array[arrayname]}二者是等价的,由起可见,有了上面的a-h是多么的重要

三,应用举例

1,一维数组

  1. array (
  2.    “0” => ‘home’,
  3.    ‘1’ => ‘who’,
  4.    ‘2’=> ‘tank’,
  5.    ‘3’=> ‘what’
  6.   );
  7. $this->tpl->assign(“onearray”$this->onearray);

a),foreach来读取

  1. {foreach from=$onearraykey=k item=value }
  2.  一维key={$k}  一维value={$value}<br />
  3. {foreachelse}
  4.  nothing
  5. {/foreach}

显示的结果是

一维key=0 一维value=home

一维key=1 一维value=who

一维key=2 一维value=tank

一维key=3 一维value=what

b),section来读取

  1. {section name=one loop=$onearray start=0 step=1}
  2.  index={$smarty.section.one.index},
  3.  index_prev={$smarty.section.one.index_prev},
  4.  index_next={$smarty.section.one.index_next},
  5.  first={$smarty.section.one.first},
  6.  last={$smarty.section.one.last},
  7.  iteration ={$smarty.section.one.iteration},
  8.  total={$smarty.section.one.total},
  9.  value={$onearray[one]}<br />
  10. {sectionelse}
  11.  nothing
  12. {/section}

显示的结果是

index=0, index_prev=-1, index_next=1, first=1, last=, iteration =1, total=4, value=home

index=1, index_prev=0, index_next=2, first=, last=, iteration =2, total=4, value=who

index=2, index_prev=1, index_next=3, first=, last=, iteration =3, total=4, value=tank

index=3, index_prev=2, index_next=4, first=, last=1, iteration =4, total=4, value=what

2,二维数组

  1. array (
  2.    “test” => ‘home’,
  3.    ‘2’ => ‘who’,
  4.    array (
  5.     “上海”,
  6.     “born” => “安徽”,
  7.     “name” => “海底苍鹰”
  8.    ),
  9.    array (
  10.     “1583456”,
  11.     “fax” => “12345678”,
  12.     “cell” => “13256478414”
  13.    )
  14.   );
  15. $this->tpl->assign(“twoarray”$this->twoarray);

a),foreach

  1. {foreach from=$twoarray kkey=k item=value }
  2.  {if is_array($value)}
  3.   {foreach from=$value key=tk item=tv }
  4.    二维tkey={$tk}  二维value={$tv}<br />
  5.   {foreachelse}
  6.    二维数组为空
  7.   {/foreach}
  8.  {else}
  9.   一维key={$k}  一维value={$value}<br />
  10.  {/if}
  11. {foreachelse}
  12.  nothing
  13. {/foreach}

显示结果如下:

一维key=test 一维value=home

一维key=2 一维value=who

二维tkey=0 二维value=上海

二维tkey=born 二维value=安徽

二维tkey=name 二维value=海底苍鹰

二维tkey=0 二维value=1583456

二维tkey=fax 二维value=12345678

二维tkey=cell 二维value=13256478414

b),section

  1. {section loop=$twoarray name=two }
  2.  {if is_array($twoarray[two])}
  3.   {section loop=$twoarray[two] name=aaa }
  4.    二维tkey={$smarty.section.aaa.index}  二维value={$twoarray[two][aaa]}<br />
  5.   {sectionelse}
  6.    二维数组为空
  7.   {/section}
  8.  {else}
  9.   一维key={$smarty.section.two.index}  一维value={$twoarray[two]}<br />
  10.  {/if}
  11. {sectionelse}
  12.  nothing
  13. {/section}

显示结果如下:

一维key=0 一维value=

一维key=1 一维value=

一维key=2 一维value=who

二维tkey=0 二维value=上海

二维tkey=1 二维value=

二维tkey=2 二维value=

如果是一维数组,并且带有下标的话,并且不是按0,1,2这样的顺序的话就取不到东西。这个能不能理解成foreach存在的理由。不过一般从数据库取数据都是二维数组,并且外层都是以0开始的。看下面的这个例子

  1. array (
  2.  array (
  3.   ‘name’ => ‘tank’,
  4.   ‘sex’ => ‘男’,
  5.   ‘old’ => ’28’
  6.  ),
  7.  array (
  8.   ‘name’ => ‘joyce’,
  9.   ‘sex’ => ‘女’,
  10.   ‘old’ => ‘111’
  11.  )
  12. );

section循环

  1. {section loop=$twoarray name=two}
  2.  name={$twoarray[two].name},sex={$twoarray[two].sex},old={$twoarray[two].old}<br />
  3. {sectionelse}
  4.  nothing
  5. {/section}

显示结果

name=tank,sex=男,old=28

name=joyce,sex=女,old=111

5


地址:http://blog.51yip.com/smarty/903.html

php框架ci配置smarty详细教程笔记

smarty3.0下载:Smarty-3.0rc3

需要用ci来写一个后台配置smarty,在网络上能够找到一些相关的文章.但是都是比较旧的内容,大部分是smary2.*的配置方法.按照这个配置后会出现一些错误.其实配置看smary官方会比较简单.

基础
在php中使用smarty的用法

  1. require_once(‘Smarty.class.php’);
  2. $smarty = new Smarty();

这里就可以使用对象$smarty的assign和display对象来解析模板.在ci里面使用时为了在controller里面来使用这两个函数.

配置
smarty里面有4个需要配置的项

  1. $smarty->setTemplateDir( …);
  2. $smarty->setCompileDir(… );
  3. $smarty->setConfigDir( …);
  4. $smarty->setCacheDir(… );

那么我们在ci的config里面创建一个smarty.php的文件,并加入4个变量.其中APPPATH的值为application目录.创建’templates_c’,其他三个文件夹ci里面都存在.

  1. <?php  if ( ! defined(‘BASEPATH’)) exit(‘No direct script access allowed’);
  2. $config[‘template_dir’] = APPPATH . ‘views’;
  3. $config[‘compile_dir’]  = APPPATH . ‘templates_c’;
  4. $config[‘cache_dir’]    = APPPATH . ‘cache’;
  5. $config[‘config_dir’]   = APPPATH . ‘config’;

类库
首先将smarty的lib目录复制到ci的libraries目录,并改名为smarty.在libraries里面创建一个ci_smarty.php的文件.这里主要是加载配置文件等.

  1. <?php
  2. if(!defined(‘BASEPATH’)) EXIT(‘No direct script asscess allowed’);
  3. require_once( APPPATH . ‘libraries/smarty/Smarty.class.php’ );
  4. class Ci_smarty extends Smarty {
  5.     protected $ci;
  6.     public function  __construct(){
  7.         parent::__construct();
  8.         $this->ci = & get_instance();
  9.         $this->ci->load->config(‘smarty’);//加载smarty的配置文件 
  10.         //获取相关的配置项 
  11.         // $this->template_dir= .. ;这是2.*的方法,3.1之后修改为 getXXX setXXX 
  12.         $this->setTemplateDir($this->ci->config->item(‘template_dir’));
  13.         $this->setCompileDir($this->ci->config->item(‘compile_dir’));
  14.         $this->setCacheDir($this->ci->config->item(‘cache_dir’));
  15.         $this->setConfigDir($this->ci->config->item(‘config_dir’));
  16.     }
  17. }

然后在config/autoload.php里面设置自动加载Ci_smarty

  1. $autoload[‘libraries’] = array(‘ci_smarty’);

自定义控制器
在core文件夹添加一个My_Controller.php的自定义控制器.将smarty的assign和display两个函数添加进入.

  1. <?php  if(!defined(‘BASEPATH’)) EXIT(‘No direct script asscess allowed’);
  2. class MY_Controller extends CI_Controller {
  3.     public function __construct() {
  4.         parent::__construct();
  5.     }
  6.     public function assign($key,$val) {
  7.         $this->ci_smarty->assign($key,$val);
  8.     }
  9.     public function display($html) {
  10.         $this->ci_smarty->display($html);
  11.     }
  12. }

将控制器继承自My_Controller就可以使用这两个函数了.

实例
控制器继承需要修改为My_Controller

  1. <?php if ( ! defined(‘BASEPATH’)) exit(‘No direct script access allowed’);
  2. class Welcome extends My_Controller {
  3.     public function index()
  4.     {
  5.         //$this->load->view(‘welcome_message’);
  6.         $data[“title”]=“标题”;
  7.         $data[“num”]=“123123”;
  8.         $this->assign(‘data’,$data);
  9.         $this->display(“index.html”);
  10.     }
  11. }

view文件夹中的index.html文件

  1. <html>
  2. <head>
  3.     <title>{$data.title}</title>
  4. </head>
  5. <body>
  6. <p>{$data.num}</p>
  7. </body>
  8. </html>

国内最快的jquery几个cdn加速节点

jQuery是一个兼容多浏览器的javascript框架,核心理念是write less,do more(写得更少,做得更多)。jQuery在2006年1月由美国人John Resig在纽约的barcamp发布,吸引了来自世界各地的众多JavaScript高手加入,由Dave Methvin率领团队进行开发。如今,jQuery已经成为最流行的javascript框架,在世界前10000个访问最多的网站中,有超过55%在使用jQuery。
jQuery是免费、开源的,使用MIT许可协议。jQuery的语法设计可以使开发者更加便捷,例如操作文档对象、选择DOM元素、制作动画效果、事件处理、使用Ajax以及其他功能。除此以外,jQuery提供API让开发者编写插件。其模块化的使用方式使开发者可以很轻松的开发出功能强大的静态或动态网页…..以上内容太官方化,不是我们今天所探讨的主要内容,今天要为大家分享的是大家必须要知道的几个jQuery的cdn加速节点。

大家都知道,jQuery虽然强大,但是体积不小,min版经过压缩后最小也要90多kb,如果我们在本地直接加载的话,势必会影响网页的响应速度,那么我们如何解决这个jQuery加载慢的问题呢?这时我们就要用到cdn加速节点,其实网络上目前有很多jQuery的cdn加速节点,甚至连jQuery官网也有提供,但是我们最好选择一个距离较近的节点使用,比如我们网站主要是针对国内用户的话,那最好就选择国内的jQuery的cdn加速节点,如果是面向国外用户那自然是选择国外的jQuery cdn加速节点了….下面我们就来看一下具体有哪些吧,min就是已经压缩处理的意思

1、谷歌jquery cdn加速点
http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js
http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js

2、微软jquery cdn加速点
http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.2.min.js
http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.3.min.js
http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.9.1.min.js
http://ajax.aspnetcdn.com/ajax/jQuery/jquery-2.1.0.min.js

3、新浪jquery cdn加速点
http://lib.sinaapp.com/js/jquery/1.7.2/jquery.min.js
http://lib.sinaapp.com/js/jquery/1.9.0/jquery.min.js
http://lib.sinaapp.com/js/jquery/1.9.0/jquery.js
http://lib.sinaapp.com/js/jquery/1.9.1/jquery-1.9.1.min.js
http://lib.sinaapp.com/js/jquery/1.9.1/jquery-1.9.1.js
http://lib.sinaapp.com/js/jquery/2.0/jquery.min.js
http://lib.sinaapp.com/js/jquery/2.0/jquery.js
http://lib.sinaapp.com/js/jquery/2.0.1/jquery-2.0.1.min.js
http://lib.sinaapp.com/js/jquery/2.0.1/jquery-2.0.1.js
http://lib.sinaapp.com/js/jquery/2.0.2/jquery-2.0.2.min.js
http://lib.sinaapp.com/js/jquery/2.0.2/jquery-2.0.2.min.map
http://lib.sinaapp.com/js/jquery/2.0.2/jquery-2.0.2.js
http://lib.sinaapp.com/js/jquery/2.0.3/jquery-2.0.3.min.js
http://lib.sinaapp.com/js/jquery/2.0.3/jquery-2.0.3.js
http://lib.sinaapp.com/js/jquery/2.0.3/jquery-2.0.3.min.map

4、加速乐jquery cdn加速点

http://mini.jiasule.com/framework/jquery/1.8.0/jquery-1.8.0.min.js
http://mini.jiasule.com/framework/jquery/1.8.1/jquery-1.8.1.min.js
http://mini.jiasule.com/framework/jquery/1.8.3/jquery-1.8.3.min.js
http://mini.jiasule.com/framework/jquery/1.9.0/jquery-1.9.0.min.js
http://mini.jiasule.com/framework/jquery/1.9.1/jquery-1.9.1.min.js

5、百度jquery cdn加速点
http://libs.baidu.com/jquery/2.0.0/jquery.min.js
http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js

6、jQuery官网cdn加速点(国外)
http://code.jquery.com/jquery-1.9.1.min.js
http://code.jquery.com/jquery-2.1.0.min.js
http://code.jquery.com/jquery-2.1.1.min.js(支持IE版本≥9.0)

7、cloudflare jQuery cdn加速点(国外)
http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.0/jquery.min.js

8、又拍云jQuery cdn加速点
http://upcdn.b0.upaiyun.com/libs/jquery/jquery-2.0.3.min.js
http://upcdn.b0.upaiyun.com/libs/jquery/jquery-2.0.2.min.js
http://upcdn.b0.upaiyun.com/libs/jquery/jquery-2.0.1.min.js
http://upcdn.b0.upaiyun.com/libs/jquery/jquery-1.10.2.min.js
http://upcdn.b0.upaiyun.com/libs/jquery/jquery-1.9.1.min.js
9、360安全卫士jQuery cdn加速点

http://libs.useso.com/js/jquery/2.1.1-rc2/jquery.min.js
http://libs.useso.com/js/jquery/2.1.1-rc2/jquery.min.map
http://libs.useso.com/js/jquery/2.1.1-rc2/jquery.js
http://libs.useso.com/js/jquery/2.1.1/jquery.js
http://libs.useso.com/js/jquery/2.1.1/jquery.min.js
http://libs.useso.com/js/jquery/2.1.1/jquery.min.map
http://libs.useso.com/js/jquery/2.1.0/jquery.js
http://libs.useso.com/js/jquery/2.1.0/jquery.min.js
http://libs.useso.com/js/jquery/2.1.0/jquery.min.map
http://libs.useso.com/js/jquery/1.9.1/jquery.js
http://libs.useso.com/js/jquery/1.9.1/jquery.min.js
http://libs.useso.com/js/jquery/1.9.1/jquery.min.map
http://libs.useso.com/js/jquery/1.8.3/jquery.js
http://libs.useso.com/js/jquery/1.8.3/jquery.min.js

选择好你的jQuery cdn加速点之后直接在网页中使用< script type=”text/javascript” >….< /script >调用即可,建议不要放到head中,而是放到< /body >前,原因你懂得

javascript选项卡切换速度控制实例Demo

  1. <!DOCTYPE html>  
  2. <html>  
  3. <head>  
  4.     <title>javascript选项卡切换速度控制实例Demo</title>  
  5.     <meta http-equiv=“Content-Type” content=“text/html; charset=utf-8”/>  
  6. <script src=“http://libs.baidu.com/jquery/1.9.0/jquery.js”></script>  
  7. </head>  
  8. <body>  
  9.   
  10. <script style=“text/javascript”>  
  11. var time =0;//区分第几次点击  
  12. $(“#xgt a”).click(function(){  
  13.   
  14.     //点击速度控制  
  15.     if(time==1){  
  16.           
  17.         if(!qiehuan())return false;  
  18.     }  
  19.     //第一次点击后改为1  
  20.     time =1;  
  21.     //获取本次点击后的时间戳毫秒  
  22.     nowTimestamp =new Date().getTime();  
  23.     //实行切换  
  24.     $(“#xgt a”).removeClass(‘active’);  
  25.     $(this).addClass(“active”)  
  26.     var func = $(this).attr(‘function’);  
  27.       
  28.     $.post(“/mpyp/get_cases_xgts”, { func:func,id:id},  
  29.    function(data){  
  30.        if(data){  
  31.         var obj = JSON.parse(data);  
  32.             if(obj.imgs !=){  
  33.             $(“#xgt_show”).html(obj.imgs);  
  34.             $(“#func_name”).html(obj.func);  
  35.             }  
  36.        }  
  37.    });  
  38.      
  39. });  
  40.   
  41. //切换速度控制函数  
  42. function qiehuan()  
  43. {  
  44.       
  45.     var curTimestamp = new Date().getTime();//本次点击时间戳毫秒  
  46.     //换成秒判断  
  47.     if(curTimestamp/1000 – nowTimestamp/1000<=3)  
  48.     {  
  49.         alert(‘切换速度过于快!’)  
  50.         return false;  
  51.     }  
  52.     return true;  
  53. }  
  54. </script>     
  55. </body>  
  56. </html>  

php中的PHP_EOL是什么

  1. 看手册时发现PHP_EOL这个变量,查了下资料,原来是相当于换行符。在PHP中可以用PHP_EOL来替代,以提高代码的源代码级可移植性  
  2. PHP_EOL  
  3.   
  4.  echo PHP_EOL;  
  5.  //windows平台相当于    echo “\r\n”;  
  6.  //unix\linux平台相当于    echo “\n”;  
  7.  //mac平台相当于    echo “\r”;  

php开发常用注释

  1. <?php   
  2.   
  3. /** 
  4.      * 执行添加记录操作 
  5.      * @param $data   要增加的数据,参数为数组。数组key为字段值,数组值为数据取值 
  6.      * @param $return_insert_id 是否返回新建ID号 
  7.      * @param $replace 是否采用 replace into的方式添加数据 
  8.      * @return boolean 
  9.      */  
  10.   
  11. ?>