好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>CMS系统>Dedecms
<tfoot draggable='sEl'></tfoot>

php触发url php触发火车头采集

很多站长朋友们都不太清楚php触发url,今天小编就来给大家整理php触发url,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 PHP调用数据库中的URL地址进行跳转问题 2、 php打开URL的几种方法 3、 PHP下打开URL地址的几种方法小结 4、 如何在PHP中实现URL路由 5、 php中想调用url后的参数进入另一个链接中,不知道如何操作 PHP调用数据库中的URL地址进行跳转问题

在跳转的时候php一般默认你用的是相对地址所以会把域名自动加上,所以在存储地址的时候一般要把http://加上。

php打开URL的几种方法

PHP中打开URL地址的几种方法总结,这里的函数主要用于小偷采集等函数。

1: 用file_get_contents 

以get方式获取内容 

复制代码 代码如下:

<?php 

$url=''; 

$html = file_get_contents($url); 

//print_r($http_response_header); 

ec($html); 

printhr(); 

printarr($http_response_header); 

printhr(); 

?> 

示例代码2: 用fopen打开url, 

以get方式获取内容 

复制代码 代码如下:

<? 

$fp = fopen($url, 'r'); 

printarr(stream_get_meta_data($fp)); 

printhr(); 

while(!feof($fp)) { 

$result .= fgets($fp, 1024); 

} 

echo "url body: $result"; 

printhr(); 

fclose($fp); 

?> 

示例代码3:用file_get_contents函数,以post方式获取url 

复制代码 代码如下:

<?php 

$data = array ('foo' => 

'bar'); 

$data = http_build_query($data); 

$opts = array ( 

'http' 

=> array ( 

'method' => 'POST', 

'header'=> "Content-type: 

application/x-www-form-urlencoded" . 

"Content-Length: " . strlen($data) . 

"", 

'content' => $data 

), 

); 

$context = 

stream_context_create($opts); 

$html = 

file_get_contents('', false, $context); 

echo $html; 

?> 

示例代码4:用fsockopen函数打开url,以get方式获取完整的数据,包括header和body 

复制代码 代码如下:

<? 

function get_url 

($url,$cookie=false) { 

$url = parse_url($url); 

$query = 

$url[path]."?".$url[query]; 

ec("Query:".$query); 

$fp = fsockopen( 

$url[host], $url[port]?$url[port]:80 , $errno, $errstr, 30); 

if (!$fp) { 

return false; 

} else { 

$request = "GET $query HTTP/1.1"; 

$request .= "Host: $url[host]"; 

$request .= "Connection: Close"; 

if($cookie) $request.="Cookie: $cookie\n"; 

$request.=""; 

fwrite($fp,$request); 

while(!@feof($fp)) { 

$result .= @fgets($fp, 

1024); 

} 

fclose($fp); 

return $result; 

} 

} 

//获取url的html部分,去掉header 

function GetUrlHTML($url,$cookie=false) { 

$rowdata = get_url($url,$cookie); 

if($rowdata) 

{ 

$body= 

stristr($rowdata,""); 

$body=substr($body,4,strlen($body)); 

return $body; 

} 

return false; 

} 

?>

PHP下打开URL地址的几种方法小结

2种方法循环输出php数组:

第一种方法:

$arr= array (1258, 1193, 1785);

foreach($arr as $value){

echo $value; //这里输出数组内容

}

第二种方法:

$arr= array (1258, 1193, 1785);

for($i=0;$i<count($arr);$i++){

echo $arr[$i];//这里输出数组内容

}

第一种方法中使用了foreach遍历数组是最常用的!

如何在PHP中实现URL路由

第一步,首先要在服务器的配置上对/router/路径进行拦截

调用某个文件夹目录下的index.php页面,假定现在所有模块使用单独的文件存放于class目录下,该目录与router平级,如下图所示:

第二步,路由分发器的实现(index.php)

1: <!Doctype html>

2: <html>

3: <head>

4: <title>路由测试~~</title>

5: <meta http-equiv="content-type" content="text/html; charset=utf-8" />

6: </head>

7: <body>

8:

9: <?php

10:

11: date_default_timezone_set("Asia/Shanghai");

12:

13: define("MODULE_DIR", "class/");

14:

15:

16: $_DocumentPath = $_SERVER['DOCUMENT_ROOT'];

17: $_FilePath = __FILE__;

18: $_RequestUri = $_SERVER['REQUEST_URI'];

19:

20: $_AppPath = str_replace($_DocumentPath, '', $_FilePath); //==>\router\index.php

21: $_UrlPath = $_RequestUri; //==>/router/hello/router/a/b/c/d/abc/index.html?id=3url=http:

22:

23: $_AppPathArr = explode(DIRECTORY_SEPARATOR, $_AppPath);

24:

25: /**

26: * ;url=http:

27: *

28: * /hello/router/a/b/c/d/abc/index.html?id=3url=http:

29: */

30:

31: for ($i = 0; $i < count($_AppPathArr); $i++) {

32: $p = $_AppPathArr[$i];

33: if ($p) {

34: $_UrlPath = preg_replace('/^\/'.$p.'\//', '/', $_UrlPath, 1);

35: }

36: }

37:

38: $_UrlPath = preg_replace('/^\//', '', $_UrlPath, 1);

39:

40: $_AppPathArr = explode("/", $_UrlPath);

41: $_AppPathArr_Count = count($_AppPathArr);

42:

43: $arr_url = array(

44: 'controller' => 'index',

45: 'method' => 'index',

46: 'parms' => array()

47: );

48:

49: $arr_url['controller'] = $_AppPathArr[0];

50: $arr_url['method'] = $_AppPathArr[1];

51:

52: if ($_AppPathArr_Count > 2 and $_AppPathArr_Count % 2 != 0) {

53: die('参数错误');

54: } else {

55: for ($i = 2; $i < $_AppPathArr_Count; $i += 2) {

56: $arr_temp_hash = array(strtolower($_AppPathArr[$i])=>$_AppPathArr[$i + 1]);

57: $arr_url['parms'] = array_merge($arr_url['parms'], $arr_temp_hash);

58: }

59: }

60:

61: $module_name = $arr_url['controller'];

62: $module_file = MODULE_DIR.$module_name.'.class.php';

63: $method_name = $arr_url['method'];

64:

65: if (file_exists($module_file)) {

66: include $module_file;

67:

68: $obj_module = new $module_name();

69:

70: if (!method_exists($obj_module, $method_name)) {

71: die("要调用的方法不存在");

72: } else {

73: if (is_callable(array($obj_module, $method_name))) {

74: $obj_module -> $method_name($module_name, $arr_url['parms']);

75:

76: $obj_module -> printResult();

77: }

78: }

79:

80: } else {

81: die("定义的模块不存在");

82: }

83:

84:

85: ?>

86:

87: </body>

88: </html>

获取请求的uri,然后拿到要加载的模块名、调用方法名,对uri参数进行简单的判断..

第三步,模块的编写

根据上述的uri,我们要调用的是Hello模块下的router方法,那么可以在class目录下定义一个名为Hello.class.php的文件(注意linux下是区分大小写的)

1: <?php

2:

3: class Hello {

4:

5: private $_name;

6: private $_varValue;

7:

8: function __construct() {

9:

10: }

11:

12: function router() {

13: $this->_name = func_get_arg(0);

14: $this->_varValue = func_get_arg(1);

15: }

16:

17: function printResult() {

18: echo $this->_name;

19: echo "<p>";

20: echo var_dump($this->_varValue);

21: echo "</p>";

22: }

23: }

24:

25: ?>

php中想调用url后的参数进入另一个链接中,不知道如何操作

方法是

<img src="<? echo $_GET['num'] ?>.gif" />

其中$_GET['num']等于你图片的名字。

不过PHP只能实现需要刷新页面的。

如果需要无刷新的就只能用JS了。

关于php触发url的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于php触发url php触发火车头采集的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did166613
更新时间:2023-03-09   阅读:47次

上一篇: php语言的劣势 php和java优缺点

下一篇:细说php源码 php 开源

相关资讯

最新资料更新

  • 1.dedecms会员登录积分每天只限增加一次的实现思路
  • 2.dedecms图片集添加水印的方法
  • 3.织梦列表页分页错位(分页显示为竖排)的解决方法
  • 4.dede调用文章第一张图片(非缩略图)的实现方法
  • 5.解决dedecms多域名和站点的绑定的问题
  • 6.Dedecms频道,列表页,内容页中调用全站最新文章的方法
  • 7.dedecms如何在列表页调用body内容字段的方法示例
  • 8.织梦网站后台底部被挂黑链的解决方法详细解析
  • 9.dedecms的sql标签中传入参数的方法
  • 10.DEDECMS教程:上/下一篇文章标题长度的截取方法
  • 11.dedecms v5.7与v5.6栏目增加缩略图的方法
  • 12.织梦DEDECMS结构化数据Meta申明标签
  • 13.分享两个DEDECMS分页样式css代码
  • 14.详解解决织梦dede:title字数限制的两种方法
  • 15.织梦dedecms5.7版自动给图片添加alt属性的方法
  • 16.DedeCMS Wap.php 绑定域名的解决办法
  • 17.Dedecms实现列表缩图添加alt锚文本信息的解决方法
  • 18.DEDE [field:global name=autoindex/] 按序号排列从0从1开始
  • 19.dede网站内容页如何调取栏目页标题及关键字组合为seo标题
  • 20.dede会员列表调用适用于企业、个人

CopyRight:2016-2025好得很程序员自学网 备案ICP:湘ICP备09009000号-16 http://haodehen.cn
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2025 「好得很程序员自学网」
[ SiteMap ]