首页 > 编程技术 > php

php最简单获取数组最后无素值

发布时间:2016-11-25 15:55

<?
//php教程最简单获取数组最后无素值

 代码如下 复制代码
//方法一
$url ='www.111cn.net.cc';
$tmpUrl = explode('.',$url);

//输出temurl看看
print_r($tmpUrl);
/*
结果:

 代码如下 复制代码
Array
(
    [0] => www
    [1] => 111cn
    [2] => net
    [3] => cc
)


*/

//我们来看获取方法一

 代码如下 复制代码

echo end($tmpUrl); //cc

//方法二数组长度
$count = count($tmpUrl);
echo $tmpUrl[$count-1];//cc

/*
总结一下:
方法一用了php内部函数end,这个方便快捷,
方法二用了count统计数组长度再减一,得出相对应的值。
本站原创文章www.111cn.net
*/

?>

代码如下:
//获得当前的脚本网址
function GetCurUrl()
{
if(!empty($_SERVER["REQUEST_URI"]))
{
$scriptName = $_SERVER["REQUEST_URI"];
$nowurl = $scriptName;
}
else
{
$scriptName = $_SERVER["PHP_SELF"];
if(empty($_SERVER["QUERY_STRING"]))
{
$nowurl = $scriptName;
}
else
{
$nowurl = $scriptName."?".$_SERVER["QUERY_STRING"];
}
}
return $nowurl;
}

另一个是PHP替换网址中query部分的某变量的值比如 ,我们要设$url中的key=321;
其实有几种情况:
$url='www.111cn.net/a.php教程?key=330′;
或$url='www.111cn.net/a.php;
或$url='www.111cn.net/a.php?cat=2′;
等等。虽然情况很多,但PHP处理起来非常简单,如下:
复制代码 代码如下:
/* 将URL中的某参数设为某值*/ //【这一段就挺好啊】
function url_set_value($url,$key,$value)
{
$a=explode('?',$url);
$url_f=$a[0];
$query=$a[1];
parse_str($query,$arr);
$arr[$key]=$value;
return $url_f.'?'.http_build_query($arr);
}

不过我的替换是这样写的。。当然也很烂 。。 

这是个获取文章内容中所有链接的php正则表达式

$str ="";

 代码如下 复制代码
$reg = "<a[sS]*?(href)s*=s*(?(?=["'])((["'])(?<href>[^"']*))|(?<src>[^s>]+))[sS]*?>";

//下面这个实例是获取内容中域名正则表达式

 代码如下 复制代码
function get_domain($url){
  $pattern = "/[w-]+.(com|net|org|gov|cc|biz|info|cn)(.(cn|hk))*/";
  preg_match($pattern, $url, $matches);
  if(count($matches) > 0) {
   return $matches[0];
  }else{
   $rs = parse_url($url);
   $main_url = $rs["host"];
   if(!strcmp(long2ip(sprintf("%u",ip2long($main_url))),$main_url)) {
    return $main_url;
   }else{
    $arr = explode(".",$main_url);
    $count=count($arr);
    $endArr = array("com","net","org","3322");//com.cn  net.cn 等情况
    if (in_array($arr[$count-2],$endArr)){
     $domain = $arr[$count-3].".".$arr[$count-2].".".$arr[$count-1];
    }else{
     $domain =  $arr[$count-2].".".$arr[$count-1];
    }
    return $domain;
   }
  }
 }

 
 //实例
 
 $str ="jfkdlajfdafdjak;www.111cn.net";
 echo get_domain($str)
 
 //得出值为111cn.net
 

<?php教程

function throw_error($message) {
$error_page = "/err/error.php";

$error_url = $error_page;
$error_url .= "?REDIRECT_ERROR_NOTES=$message";
$error_url .= "&REDIRECT_URL=" . $GLOBALS["PHP_SELF"];
$error_url .= "&REDIRECT_REQUEST_METHOD=$REQUEST_METHOD";
$error_url .= "&REDIRECT_STATUS=501";
Header("Status: 501");
Header("Location: $error_url");
exit;
}

ob_start();
// 使用输出缓冲以便在这页中的任何地方输出错误

if(!condition) {
throw_error("the condition failed");
}

ob_end_flush();
// 页面处理完毕,刷新输出缓冲

 代码如下 复制代码
<?php
class Foo
{
public static $my_static = 'foo';
public function staticValue() {
return self::$my_static;
}
}
class Bar extends Foo
{
public function fooStatic() {
return parent::$my_static;
}
}
print Foo::$my_static . " ";
$foo = new Foo();
print $foo->staticValue() . " ";
print $foo->my_static . " "; // Undefined "Property" my_static
print $foo::$my_static . " ";
$classname = 'Foo';
print $classname::$my_static . " "; // PHP 5.3.0之后可以动态调用
print Bar::$my_static . " ";
$bar = new Bar();
print $bar->fooStatic() . " ";
?>

 

标签:[!--infotagslink--]

您可能感兴趣的文章: