×

phphandle函数

phphandle函数(php handle)

admin admin 发表于2023-04-06 02:24:09 浏览68 评论0

抢沙发发表评论

本文目录一览:

php写一个函数,能够遍历一个文件夹下的所有文件和子文件夹

最近刚写的,可以遍历指定目录下的所有文件、文件夹、特定后缀的文件:

/**

 * 遍历目录

 * @param string $dir 绝对/相对路径

 * @param string $filter 默认*返回所有文件及文件夹,*.php仅返回php文件,如果$patten为GLOB_BRACE可实现多文件筛选,如*.{php,html},返回php和html文件-phphandle函数

 * @param const $patten 默认GLOB_BRACE,可选:GLOB_ONLYDIR,更多参数请参考手册

 * @param string/bool $nocache 防止本次调用的结果缓存上次的结果,如果一个脚本仅调用一次本函数,则不用管,否则得设个值

 * @return array

 */

function globdir($dir, $filter = '*', $patten = GLOB_BRACE, $nocache = null) {

    static $file_arr = array ();

    isset($nocache)  $file_arr = array ();

    if (!is_dir($dir)) return;

    if ($patten == GLOB_ONLYDIR) {

        $code = 'if (is_dir($file)) {$file_arr[] = $file;globdir($file, "*", GLOB_ONLYDIR);}';

    } else {

        $code = 'is_file($file) ? $file_arr[] = $file : globdir($file,"' . $filter . '",' . $patten . ');';-phphandle函数

    }

    array_walk(glob("{$dir}/{$filter}", $patten), create_function('$file, $k, $file_arr', $code), $file_arr);-phphandle函数

    if ($filter != '*') {

        array_walk(glob("{$dir}/*", GLOB_ONLYDIR), create_function('$dir,$k,$param', 'list($filter, $patten) = explode("|", $param);globdir($dir, $filter, $patten);'), "{$filter}|{$patten}");-phphandle函数

    }

    return $file_arr;

}

php获取网页源码内容有哪些办法

可以参考以下几种方法:

方法一: file_get_contents获取

span style="white-space:pre" /span$url="";

span style="white-space:pre" /span$fh= file_get_contents

('');span style="white-space:pre" /spanecho $fh;

方法二:使用fopen获取网页源代码

span style="white-space:pre" /span$url="";

span style="white-space:pre" /span$handle = fopen ($url, "rb");

span style="white-space:pre" /span$contents = "";

span style="white-space:pre" /spanwhile (!feof($handle)) {

span style="white-space:pre"  /span$contents .= fread($handle, 8192);

span style="white-space:pre" /span}

span style="white-space:pre" /spanfclose($handle);

span style="white-space:pre" /spanecho $contents; //输出获取到得内容。

方法三:使用CURL获取网页源代码

$url="";

$UserAgent = 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; .NET CLR 3.5.21022; .NET CLR 1.0.3705; .NET CLR 1.1.4322)';-phphandle函数

$curl = curl_init(); //创建一个新的CURL资源

curl_setopt($curl, CURLOPT_URL, $url); //设置URL和相应的选项

curl_setopt($curl, CURLOPT_HEADER, 0);  //0表示不输出Header,1表示输出

curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); //设定是否显示头信息,1显示,0不显示。//如果成功只将结果返回,不自动输出任何内容。如果失败返回FALSE-phphandle函数

curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);

curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);

curl_setopt($curl, CURLOPT_ENCODING, ''); //设置编码格式,为空表示支持所有格式的编码

//header中“Accept-Encoding: ”部分的内容,支持的编码格式为:"identity","deflate","gzip"。

curl_setopt($curl, CURLOPT_USERAGENT, $UserAgent);

curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);

//设置这个选项为一个非零值(象 “Location: “)的头,服务器会把它当做HTTP头的一部分发送(注意这是递归的,PHP将发送形如 “Location: “的头)。

$data = curl_exec($curl);

echo $data;

//echo curl_errno($curl); //返回0时表示程序执行成功

curl_close($curl); //关闭cURL资源,并释放系统资源

拓展资料

PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。-phphandle函数

用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。-phphandle函数

参考资料:PHP(超文本预处理器)-百度百科

php里有没有指定读取第几行的函数

php提供了内置函数fgets(),从文件指针中读取一行。代码如下:?php $file=fopen("D:\\CHENCHENG\\myqq.txt","r"); while(! feof($file)){ $rows = fgets($file); echo "你要的第三行内容就是$rows[2]";}-phphandle函数

php set_error_handle() 参数是数组,则么回事

考虑以下代码:

class CallbackClass {

    function CallbackFunction() {

        // refers to $this

    }

    function StaticFunction() {

        // doesn't refer to $this

    }

}

function NonClassFunction() {

}

在PHP里有三种方法来设置响应函数(使用set_error_handler() 函数作示例):

1: set_error_handler('NonClassFunction');

2: set_error_handler(array('CallbackClass', 'StaticFunction'));

3: $o = new CallbackClass();

   set_error_handler(array($o, 'CallbackFunction'));

也就是说,通常,你可以简单地设置某个函数做为错误的响应处理函数,但当这个函数是某个类函数时,其使用方法就是如 set_error_handler(array('CallbackClass', 'StaticFunction')) 这种形式。-phphandle函数

set_exception_handler 与此原理类似。

PHP获取文件夹大小函数用法实例

本文实例讲述了PHP获取文件夹大小函数用法。分享给大家供大家参考。具体如下:

?php

//

获取文件夹大小

function

getDirSize($dir)

{

$handle

=

opendir($dir);

while

(false!==($FolderOrFile

=

readdir($handle)))

{

if($FolderOrFile

!=

"."

$FolderOrFile

!=

"..")

{

if(is_dir("$dir/$FolderOrFile"))

{

$sizeResult

+=

getDirSize("$dir/$FolderOrFile");

}

else

{

$sizeResult

+=

filesize("$dir/$FolderOrFile");

}

}

}

closedir($handle);

return

$sizeResult;

}

//

单位自动转换函数

function

getRealSize($size)

{

$kb

=

1024;

//

Kilobyte

$mb

=

1024

*

$kb;

//

Megabyte

$gb

=

1024

*

$mb;

//

Gigabyte

$tb

=

1024

*

$gb;

//

Terabyte

if($size

$kb)

{

return

$size."

B";

}

else

if($size

$mb)

{

return

round($size/$kb,2)."

KB";

}

else

if($size

$gb)

{

return

round($size/$mb,2)."

MB";

}

else

if($size

$tb)

{

return

round($size/$gb,2)."

GB";

}

else

{

return

round($size/$tb,2)."

TB";

}

}

echo

getRealSize(getDirSize('需要获取大小的目录'));

?

希望本文所述对大家的php程序设计有所帮助。

PHP如何从文本中提取指定行数内容

PHP如何从文本中提取指定行数内容?在php中,通过fopen()方法打开文件,在while中使用fgets()方法获取每行数据,每读到一行,就使用标识记录一次,通过累计记录数计算出文件的行数。下面介绍实现的过程。-phphandle函数

方法/步骤分步阅读

1

/7

新建一个php文件,命名为handle.php,用于讲解PHP怎么获取文件的行数。

2

/7

新建一个文本文件,命名为test.txt,在里面输入四行数据,分别是aaa,bbb,ccc,ddd。

3

/7

在handle.php文件里,使用fopen方法以只读方式打开test.txt文件,代码如下:

4

/7

在handle.php文件里,创建一个初始变量i,用于保存文件内容的行数。

5

/7

通过while()语句,使用fgets方法从文件指针中读取一行,每读取一行,变量i自加一,直到到达文件末尾停止while的执行。

注:!feof($handle),函数检测是否已到达文件末尾。

6

/7

最后,使用echo输出文件的行数,并通过fclose关闭文件资源。代码如下:

7

/7

在浏览器执行handle.php文件,查看输出的行数,执行的结果为4行。

内容仅供参考并受版权保护