PHP动态生成javascript文件的2个例子

2015-01-24信息快讯网

这篇文章主要介绍了PHP动态生成javascript文件的2个例子,需要的朋友可以参考下

一、PHP动态生成

第一步:在PHP文件中直接写入JS代码,并在头部声明这是一个JavaScript文件

<?php header('Content-Type: application/x-javascript; charset=UTF-8');?>

第二步:用PHP输出转义JavaScript代码
function jsformat($str)
{
    $str = trim($str);
    $str = str_replace('\\s\\s', '\\s', $str);
    $str = str_replace(chr(10), '', $str);
    $str = str_replace(chr(13), '', $str);
    $str = str_replace('    ', '', $str);
    $str = str_replace('\\', '\\\\', $str);
    $str = str_replace('"', '\\"', $str);
    $str = str_replace('\\\'', '\\\\\'', $str);
    $str = str_replace("'", "\'", $str);
    return $str;
}

直接调用jsformat($str)
最后一步:进行url重写,比如PHP地址为 xxx/123.php 只要重写成 xxx/123.js 至此已经达成目的。

以PHPCMS为例

<?php header('Content-Type: application/x-javascript; charset=UTF-8');?>
{pc:content action="position" posid="1" order="id DESC" num="7" $catid=11}
<?php
function jsformat($str){
    $str = trim($str);
    $str = str_replace('\\s\\s', '\\s', $str);
    $str = str_replace(chr(10), '', $str);
    $str = str_replace(chr(13), '', $str);
    $str = str_replace('    ', '', $str);
    $str = str_replace('\\', '\\\\', $str);
    $str = str_replace('"', '\\"', $str);
    $str = str_replace('\\\'', '\\\\\'', $str);
    $str = str_replace("'", "\'", $str);
    return $str;
}
?>
{loop $data $v}
document.writeln("<?php echo jsformat("<a href=\"$v[url]\"><img src=\"$v[thumb]\"></a>");?>");
{/loop}
{/pc}

每一个循环都用 document.writeln()写出转移后的代码。

二、PHP include JS文件

通过html写javascript引入一个php的链接,该php实际上是生成js的文件:

if (20 == $ad_type_id) { // 对联
 ob_start ();
 include TMPL_PATH . 'Code/duilian.js';
 header("content-type: application/x-javascript");
 $code = ob_get_clean ();
 echo $code;
}

在php里面include js文件,js里面的var swf这样的变量,var swf = ‘‘,这里使用ob缓存,注意加上header(“content-type: application/x-javascript”),让浏览器知道这是个javascript的脚本文件。

页面上这样引用:

<script src="http://tg.1155t.cn/code/53/" language="JavaScript"></script>

Linux下PHP安装mcrypt扩展模块笔记
PHP下的Oracle客户端扩展(OCI8)安装教程
CentOS 6.3下安装PHP xcache扩展模块笔记
PHP实现对站点内容外部链接的过滤方法
php生成随机数的三种方法
PHP中echo和print的区别
PHP函数eval()介绍和使用示例
浅谈php函数serialize()与unserialize()的使用方法
php中多维数组按指定value排序的实现代码
PHP伪静态Rewrite设置之APACHE篇
async和DOM Script文件加载比较
php中的四舍五入函数代码(floor函数、ceil函数、round与intval)
PHP关于htmlspecialchars、strip_tags、addslashes的解释
PHP和javascript常用正则表达式及用法实例
php中eval函数的危害与正确禁用方法
JavaScript创建命名空间的5种写法
PHP中的多行字符串传递给JavaScript的两种方法
PHP+javascript制作带提示的验证码源码分享
PHP获取网页标题的3种实现方法代码实例
php实现数组筛选奇数和偶数示例
php求正负数数组中连续元素最大值示例
PHP入门经历和学习过程分享
Session的工作机制详解和安全性问题(PHP实例讲解)
php中的curl使用入门教程和常见用法实例
php警告Creating default object from empty value 问题的解决方法
PHP调用JAVA的WebService简单实例
PHP strip_tags()去除HTML、XML以及PHP的标签介绍
php中sprintf与printf函数用法区别解析
php的sprintf函数的用法 控制浮点数格式
php中simplexml_load_string使用实例分享
php创建sprite
php中自定义函数dump查看数组信息类似var_dump
利用浏览器的Javascript控制台调试PHP程序
PHP eval函数使用介绍
FireFox浏览器使用Javascript上传大文件
PHP加密函数 Javascript/Js 解密函数
PHP中的str_repeat函数在JavaScript中的实现
PHP与javascript实现变量交互的示例代码
©2014-2024 dbsqp.com