php 获取字符串内特定的值

php 获取字符串内特定的值,第1张

你这个数据应该是json格式。在php中,要使用json_decode()解析成对象或者数组,这样子才方便使用。不过这里有个局限,举个例子:

$bad_json = "{ 'bar': 'baz' }"; // 键值对,要用双引号,单引号是无效的。所以返回null。

json_decode($bad_json); // null

你这里的数据刚好就是单引号包裹键名和数值的,所以用json_decode会返回null。

解决办法:

1、严格按照json的格式来构建这个数据,这样子就很方便的使用json_decode函数了。这应该是最有好的方法。建议先尝试这个。

2、对数据进行处理,单引号转成双引号,然后使用json_decode函数。这个要自己写个处理数据的函数。这里给出一个简单的处理,只是简单的替换,未考虑数据里面所含的单引号。

$data=str_replace("'", '"', $data); // 单引号替换成双引号

$data=json_decode($data);

3、使用第三方类库

对于 url ,可以使用 parse_url 函数来解析获取相应的部分,比如 host、path、query 等。按照你题目的要求,需要获取的是 query 部分,这部分又可以使用 parse_str 函数来解析,然后获取需要的参数,比如你这里的 id。

这里有一个函数,用于获取一个链接的URL的query部分,并解析成数组,可以很方便的通过键名来获取参数值。

// 解析 url,数组的形式返回 url 的 query 部分

function getQuery($url='')

{

    $url=trim($url);

    if($url=='')

        return false;

    // 解析 url,获取 query 部分,它是一个字符串

    $query=parse_url($url, PHP_URL_QUERY);

    if($query===null)

        return null;

    // 解析 query 部分,将会保存到一个数组

    parse_str($query, $params);

    return $params;

}

// 使用举例

$url='id=24498704247'; // 你要解析的那个 url

$paras=getQuery($url); // array( 'id' => 24498704247)

echo $paras['id']; // 24498704247

1、可以通过>

<php

$source = array('a' => '111', 'b' => '222', 'c' => '33333', 'd' => '4444');

$needKey = array('a', 'c');

$needKey = array_flip($needKey); //调转键值使之可比。array('a'=>0, 'c'=>1)

$array = array_intersect_ukey($source,$needKey,'key_compare_func'); //array_intersect_ukey用回调函数比较键名来计算数组的交集

var_dump($array);

function key_compare_func($key1, $key2){

if ($key1 == $key2)

return 0;

else if ($key1 > $key2)

return 1;

else

return -1;

}

//End_php

$new_array = Array();

foreach( $data as $key => $val )

{

    if( in_array( $val, $new_array ) )

    {

        echo $key;

        continue;

    }

    else

    {

        $new_array[] = $val;

    }

}

写法是这样写,不过建议将数据存入数据库,那样方便多了,还效率

arrforEach(function(items,index){

for(let ke in items){

if(items[ke] == 'blue'){

consolelog(ke)

}

}

})

以上就是关于php 获取字符串内特定的值全部的内容,包括:php 获取字符串内特定的值、100分求PHP获取图中链接URL中的ID数字值。、在servlet里怎样获得session的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9278502.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-26
下一篇2023-04-26

发表评论

登录后才能评论

评论列表(0条)

    保存