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


Posted in PHP onApril 11, 2014

一、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>
PHP 相关文章推荐
PHP session常见问题集锦及解决办法总结
Mar 18 PHP
php下删除字符串中HTML标签的函数
Aug 27 PHP
php 字符串函数收集
Mar 29 PHP
PHP对MongoDB[NoSQL]数据库的操作
Mar 01 PHP
PHP 快速排序算法详解
Nov 10 PHP
PHP判断字符串长度的两种方法很实用
Sep 22 PHP
PHP模板引擎Smarty内建函数section,sectionelse用法详解
Apr 11 PHP
浅析php-fpm静态和动态执行方式的比较
Nov 09 PHP
Yii2选项卡的简单使用
May 26 PHP
php多文件打包下载的实例代码
Jul 12 PHP
php+ajax实现无刷新文件上传功能(ajaxuploadfile)
Feb 11 PHP
php使用redis的有序集合zset实现延迟队列应用示例
Feb 20 PHP
php实现数组筛选奇数和偶数示例
Apr 11 #PHP
php求正负数数组中连续元素最大值示例
Apr 11 #PHP
PHP入门经历和学习过程分享
Apr 11 #PHP
Session的工作机制详解和安全性问题(PHP实例讲解)
Apr 10 #PHP
php中的curl使用入门教程和常见用法实例
Apr 10 #PHP
免费手机号码归属地API查询接口和PHP使用实例分享
Apr 10 #PHP
PHP快速按行读取CSV大文件的封装类分享(也适用于其它超大文本文件)
Apr 10 #PHP
You might like
详解Yaf框架PHPUnit集成测试方法
2017/12/27 PHP
jQuery Ajax提交表单查询获得数据实例代码
2012/09/19 Javascript
解决checkbox的attr(checked)一直为undefined问题
2014/06/16 Javascript
js实现iframe自动自适应高度的方法
2015/02/17 Javascript
jQuery中$.ajax()方法参数解析
2016/10/22 Javascript
微信小程序  自定义创建详细介绍
2016/10/27 Javascript
js实现4个方向滚动的球
2017/03/06 Javascript
React 子组件向父组件传值的方法
2017/07/24 Javascript
让bootstrap的carousel支持滑动滚屏的实现代码
2017/11/27 Javascript
js隐式转换的知识实例讲解
2018/09/28 Javascript
浅谈Vue 性能优化之深挖数组
2018/12/11 Javascript
jQuery实现条件搜索查询、实时取值及升降序排序的方法分析
2019/05/04 jQuery
vue input输入框关键字筛选检索列表数据展示
2020/10/26 Javascript
js变量值传到php过程详解 将php解析成数据
2019/06/26 Javascript
vue 关闭浏览器窗口的时候,清空localStorage的数据示例
2019/11/06 Javascript
js实现倒计时秒杀效果
2020/03/25 Javascript
bootstrap-table后端分页功能完整实例
2020/06/01 Javascript
微信小程序返回上一级页面的实现代码
2020/06/19 Javascript
[49:56]VG vs Optic 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
Python脚本实现网卡流量监控
2015/02/14 Python
wxPython定时器wx.Timer简单应用实例
2015/06/03 Python
python模块hashlib(加密服务)知识点讲解
2019/11/25 Python
Python 生成一个从0到n个数字的列表4种方法小结
2019/11/28 Python
你应该知道的Python3.6、3.7、3.8新特性小结
2020/05/12 Python
最简单的matplotlib安装教程(小白)
2020/07/28 Python
python如何使用腾讯云发送短信
2020/09/17 Python
Html5监听手机摇一摇事件的实现
2019/11/07 HTML / CSS
英国领先的新鲜松露和最好的松露产品供应商:TruffleHunter
2019/08/26 全球购物
乌克兰珠宝大卖场:Zlato.ua
2020/09/27 全球购物
银行实习生的自我评价
2013/12/09 职场文书
学校地质灾害防治方案
2014/06/10 职场文书
安全例会汇报材料
2014/08/23 职场文书
2014年六五普法工作总结
2014/11/25 职场文书
2015年办公室主任工作总结
2015/04/09 职场文书
2016年清明节寄语
2015/12/04 职场文书
攻击最高的10只幽灵系神奇宝贝,坚盾剑怪排第一,第五最为可怕
2022/03/18 日漫