当前位置:  编程技术>php
本页文章导读:
    ▪php递归调用与静态变量的使用      php开发中,递归调用常常与静态变量结合使用。 静态变量的含义,大家可以参考PHP手册。 以下的代码,有利于对递归以及静态变量的理解,感兴趣的朋友可以参考下。   代码如下: <?php .........
    ▪PHP调用万网接口实现域名查询的功能      PHP调用万网接口实现域名查询的功能,有需要的朋友可以参考下。 前台页面用使用了checkbox,详细代码如下。   代码如下: <form name="form1" method="post" action="/blog_article/chaxun.html"> <tbody><tr> &.........
    ▪php借助Xpdf读取PDF中的内容      读取PDF里面的内容,并且入库存为正文,以供用户搜索。 一、下载所需的软件 不需要转中文的话,只下载:xpdf-bin-linux-3.03.tar,如果需要转中文,那就还需要:xpdf-chinese-simplified.tar 。 二、.........

[1]php递归调用与静态变量的使用
    来源: 互联网  发布时间: 2013-12-24

php开发中,递归调用常常与静态变量结合使用。
静态变量的含义,大家可以参考PHP手册。
以下的代码,有利于对递归以及静态变量的理解,感兴趣的朋友可以参考下。
 

代码如下:
<?php
//画一个很漂亮的叶子
// 定义 PI 一分的角度的值
define("PII", M_PI/180);
// 新建图像资源,并定义其背景为 白色,前景色为 黑色
$im = imagecreate(670,500);
$white = imagecolorallocate($im, 0xFF, 0xFF, 0xFF);
$g = imagecolorallocate($im, 0x00, 0x00, 0x00);
// 从下面实例化的代码可以得知,初始值 $x, $y, $L, $a 别分为 300, 500, 100, 270
function drawLeaf($g, $x, $y, $L, $a) {
global $im;
$B = 50;
$C = 9;
$s1 = 2;
$s2 = 3 ;
$s3 = 1.2;
if($L > $s1) {
// 计算叶子的定位 上面
$x2 = $x + $L * cos($a * PII);
$y2 = $y + $L * sin($a * PII);
$x2R = $x2 + $L / $s2 * cos(($a + $B) * PII);
$y2R = $y2 + $L / $s2 * sin(($a + $B) * PII);
$x2L = $x2 + $L / $s2 * cos(($a - $B) * PII);
$y2L = $y2 + $L / $s2 * sin(($a - $B) * PII);
// 计算叶子的定位 下面
$x1 = $x + $L / $s2 * cos($a * PII);
$y1 = $y + $L / $s2 * sin($a * PII);
$x1L = $x1 + $L / $s2 * cos(($a - $B) * PII);
$y1L = $y1 + $L / $s2 * sin(($a - $B) * PII);
$x1R = $x1 + $L / $s2 * cos(($a + $B) * PII);
$y1R = $y1 + $L / $s2 * sin(($a + $B) * PII);
// 别分画叶子的主干以及叶面
ImageLine($im, (int)$x, (int)$y, (int)$x2, (int)$y2, $g);
ImageLine($im, (int)$x2, (int)$y2, (int)$x2R, (int)$y2R, $g);
ImageLine($im, (int)$x2, (int)$y2, (int)$x2L, (int)$y2L, $g);
ImageLine($im, (int)$x1, (int)$y1, (int)$x1L, (int)$y1L, $g);
ImageLine($im, (int)$x1, (int)$y1, (int)$x1R, (int)$y1R, $g);
// 再次递归调用本身
drawLeaf($g, $x2, $y2, $L / $s3, $a + $C);
drawLeaf($g, $x2R, $y2R, $L / $s2, $a + $B);
drawLeaf($g, $x2L, $y2L, $L / $s2, $a - $B);
drawLeaf($g, $x1L, $y1L, $L / $s2, $a - $B);
drawLeaf($g, $x1R, $y1R, $L / $s2, $a + $B);
}
}
// 实例化
drawLeaf($g, 300, 500, 100, 270);
header("Content-type: image/png");
imagepng($im);
?>

在PHP编程中,递归调用常常与静态变量使用。静态变量的含义可以参考 PHP 手册。希望下面的代码,会更有利于对递归以及静态变量的理解
 

代码如下:
<?php
header("Content-type: text/plain");
function static_function () {
static $i = 0;
if ($i++ < 10) {
echo $i . "\n";
static_function();
}
}
static_function();

以上代码会如数输出 1 到 10 的数字。
在 static_function 函数第二次运行时,变量 i 由于是静态变量,所以仍被保留不被释放,进而可以得到自增的值。


    
[2]PHP调用万网接口实现域名查询的功能
    来源: 互联网  发布时间: 2013-12-24

PHP调用万网接口实现域名查询的功能,有需要的朋友可以参考下。
前台页面用使用了checkbox,详细代码如下。
 

代码如下:
<form name="form1" method="post" action="/blog_article/chaxun.html">
<tbody><tr>
<td align="right" valign="middle" width="251">
<p align="center">
<img border="0" src="/blog_article/templates/img/www.gif"><input name="dns" type="text" id="dns" size="20" ></p></td>
<td valign="top" width="99">
<!--
<input type="image" src="/blog_article/templates/img/cx.gif" align="left" onclick="submit()" width="50" height="18">
-->
<input type="submit" value="查询"/>
</td>
</tr>
<tr>
<td colspan="2" align="left" valign="top" >
<table width="96%" border="0" cellspacing="0" cellpadding="0" height="94%">
<tbody><tr>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="com" checked="">.com</td>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="cn" checked="">.cn</td>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="tel" checked="">.tel</td>
</tr>
<tr>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="mobi">.mobi</td>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="net" checked="">.net</td>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="org">.org</td>
</tr>
<tr>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="asia">.asia</td>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="me">.me</td>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="com.cn" checked="">.com.cn</td>
</tr>
<tr>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="net.cn">.net.cn</td>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="org.cn">.org.cn</td>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="gov.cn">.gov.cn</td>
</tr>
<tr>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="hk">.hk</td>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="tv">.tv</td>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="biz">.biz</td>
</tr>
<tr>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="cc">.cc</td>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="name">.name</td>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="info">.info</td>
</tr>
<tr>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="公司">.公司</td>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="网络">.网络</td>
<td align="left" width="76"><input name="ext[]" type="checkbox" id="ext" value="中国">.中国</td>
</tr></tbody></table>
</td>
</tr>
</tbody></table>
</form>

php代码:
 

代码如下:

<?php
//得到顶级域名
$ext=$_POST['ext'];
//得到二级域名
$dns = $_POST['dns'];

//print_r($ext);
//$domain = $dns . "." . $ext[0];
//echo $domain;

//遍历所有的域名
foreach ($ext as $value) {
//组合域名
$domain = $dns . "." . $value;

//查询:
echo $domain ;

$do = "http://panda.www.net.cn/cgi-bin/check.cgi?area_domain=" . $domain;
$xml_data = file_get_contents($do);
$result_arr = (array) simplexml_load_string($xml_data);

$returncode=$result_arr['returncode'];
$key=$result_arr['key'];

$original=$result_arr['original'];
$status= substr($original,0,3);

if($status=="210"){
   echo ":恭喜您,可以注册";
}else if($status=="211"){
   echo ":已经注册";
}else if($status=="212"){
   echo ":参数错误";
}
   echo '<br>';
}
?>

您可能感兴趣的文章:
PHP获取域名的几个全局变量
php 实现dns域名查询的方法详解(图文)
php 从url中获取域名的实例代码
php获取站点的来路域名的方法
探讨:PHP获取域名及域名IP地址的方法
php获取URL中domain域名的代码一例
PHP正则匹配获取URL中域名的代码
PHP获取当前网址及域名的代码
php正则表达式匹配URL中的域名

    
[3]php借助Xpdf读取PDF中的内容
    来源: 互联网  发布时间: 2013-12-24

读取PDF里面的内容,并且入库存为正文,以供用户搜索。

一、下载所需的软件
不需要转中文的话,只下载:xpdf-bin-linux-3.03.tar,如果需要转中文,那就还需要:xpdf-chinese-simplified.tar 。

二、安装

代码如下:
[root@localhost ~]# mkdir -p /lcf/upan
[root@localhost ~]# mkdir -p /lcf/cdrom
[root@localhost ~]# mkdir -p /lcf/xpdf
[root@localhost ~]# cd /lcf/upan/
[root@localhost upan]# cp xpdf/* ../xpdf/ (下载的文件放入/lcf/xpdf目录)
[root@localhost upan]# cd ../xpdf/
[root@localhost xpdf]# tar -zxvf xpdfbin-linux-3.03.tar.gz
[root@localhost xpdf]# cd xpdfbin-linux-3.03
[root@localhost xpdfbin-linux-3.03]# cat INSTALL
[root@localhost xpdfbin-linux-3.03]# cd bin32/
[root@localhost bin32]# cp ./* /usr/local/bin/
[root@localhost bin32]# cd ../doc/
[root@localhost doc]# mkdir -p /usr/local/man/man1
[root@localhost doc]# mkdir -p /usr/local/man/man5
[root@localhost doc]# cp *.1 /usr/local/man/man1
[root@localhost doc]# cp *.5 /usr/local/man/man5

如果不需要读取中文的话,到这里就可以结束了,如果需要,那我们继续往后
 

代码如下:
[root@localhost doc]# cp sample-xpdfrc /usr/local/etc/xpdfrc
[root@localhost xpdf]# cd /lcf/xpdf
[root@localhost xpdf]# tar -zxvf xpdf-chinese-simplified.tar.gz
[root@localhost xpdf]# cd xpdf-chinese-simplified
[root@localhost xpdf]# mkdir -p/usr/local/share/xpdf/chinese-simplified
[root@localhost xpdf]# cd xpdf-chinese-simplified/
[root@localhost xpdf-chinese-simplified]# cp Adobe-GB1.cidToUnicode ISO-2022-CN.unicodeMap EUC-CN.unicodeMap GBK.unicodeMap CMAP /usr/local/share/xpdf/chinese-simplified/

把chinese-simplified里面文件add-to-xpdfrc 的内容复制到/usr/local/etc/xpdfrc文件中。记得里面的路径要正确。(注意,这里面的简体中文包包括以下三种格式:ISO-2022-CN,EUC-CN,GBK ,看清楚哦,不支持UTF-8,可以先转为GBK,然后进行转义)

三、功能实现
至此,所有的配置完毕,我们要开始使用它了。
如果是简单的PDF读取,那么直接用下面的语句就OK了。
$content = shell_exec('/usr/local/bin/pdftotext '.$filename.' -');

如果需要转中文,如此这般,加上参数。
$content = shell_exec('/usr/local/bin/pdftotext -layout -enc GBK '.$filename.' -');

当然,加了参数之后依然是不影响英文的转换的,所以,放心使用吧。需要注意的是,这里转出来的是GBK编码的哦,现在网站很多用的是UTF-8,想要不显示乱码的话,需要再次转义一下哦。
$content = mb_convert_encoding($content, 'UTF-8','GBK');
读取出来的内容,可以再写代码自行处理。

pdftotext的主要参数:
OPTIONS
Many of the following options can be set with configuration file com-
mands. These are listed in square brackets with the description of the
corresponding command line option.
-f number
Specifies the first page to convert.
-l number
Specifies the last page to convert.
-layout
Maintain (as best as possible) the original physical layout of
the text. The default is to 'undo' physical layout (columns,
hyphenation, etc.) and output the text in reading order.
-fixed number
Assume fixed-pitch (or tabular) text, with the specified charac-
ter width (in points). This forces physical layout mode.
-raw Keep the text in content stream order. This is a hack which
often "undoes" column formatting, etc. Use of raw mode is no
longer recommended.
-htmlmeta
Generate a simple HTML file, including the meta information.
This simply wraps the text in <pre> and </pre> and prepends the
meta headers.
-enc encoding-name


    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
▪PHP单一入口之apache配置内容
▪PHP数组排序方法总结(收藏)
▪php数组排序方法大全(脚本学堂整理奉献)
▪php数组排序的几个函数(附实例)
▪php二维数组排序(实例)
▪php根据键值对二维数组排序的小例子
▪php验证码(附截图)
▪php数组长度的获取方法(三个实例)
▪php获取数组长度的方法举例
▪判断php数组维度(php数组长度)的方法
▪php获取图片的exif信息的示例代码
▪PHP 数组key长度对性能的影响实例分析
▪php函数指定默认值的方法示例
▪php提交表单到当前页面、提交表单后页面重定...
▪php四舍五入的三种实现方法
▪php获得数组长度(元素个数)的方法
▪php日期函数的简单示例代码
▪php数学函数的简单示例代码
▪php字符串函数的简单示例代码
▪php文件下载代码(多浏览器兼容、支持中文文...
▪php实现文件下载、支持中文文件名的示例代码...
sqlserver iis7站长之家
▪解决PHP文件下载时中文文件名乱码的问题
▪php数组去重(一维、二维数组去重)的简单示例
▪php小数点后取两位的三种实现方法
▪php Redis 队列服务的简单示例
▪PHP导出excel时数字变为科学计数的解决方法
▪PHP数组根据值获取Key的简单示例
▪php数组去重的函数代码示例
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,