PHP线程的内存回收问题,PHP自定义函数获取搜索

作者: 新金沙平台  发布:2019-07-12

本文实例讲述了PHP自定义函数获取搜索引擎来源关键字的方法。分享给大家供大家参考,具体如下:

本文实例讲述了PHP针对字符串开头和结尾的判断方法。分享给大家供大家参考,具体如下:

当一个PHP线程结束时,当前占用的所有内存空间都会被销毁。那么如果这个线程不结束,怎么回收内存呢?

获取搜索引擎来源关键字的函数:

//变量:
$s1 = "dotcoo world!";
$s2 = "dotcoo";
$s3 = "hello dotcoo";
//php判断字符串开头:
var_dump(substr($s1, 0, strlen($s2)) === $s2);
var_dump(strpos($s1, $s2) === 0);
var_dump(strncmp($s1, $s2, strlen($s2)) === 0);
var_dump(substr_compare($s1, $s2, 0, strlen($s2)) === 0);
//php判断字符串结尾:
var_dump(substr($s1, 0, strlen($s2)) === $s2);
var_dump(substr_compare($s3, $s2, -strlen($s2)) === 0);

refcount:引用技术器,可以理解为指向该个容器的指针个数吧。

function getKeywords() {
  // 搜索引擎关键字映射
  static $host_keyword_map = array(
      'www.baidu.com' => 'wd',
      'v.baidu.com' => 'word',
      'image.baidu.com' => 'word',
      'news.baidu.com' => 'word',
      'www.so.com' => 'q',
      'video.so.com' => 'q',
      'image.so.com' => 'q',
      'news.so.com' => 'q',
      'www.sogou.com' => 'query',
      'pic.sogou.com' => 'query',
      'v.sogou.com' => 'query',
  );
  // 检查来源是否搜索引擎
  if (!isset($_SERVER['HTTP_REFERER'])) {
    return '';
  }
  $urls = parse_url($_SERVER['HTTP_REFERER']);
  if (!array_key_exists($urls['host'], $host_keyword_map)) {
    return '';
  }
  $key = $host_keyword_map[$urls['host']];
  // 检查关键字参数是否存在
  if (!isset($urls['query'])) {
    return '';
  }
  $params = array();
  parse_str($urls['query'], $params);
  if (!isset($params[$key])) {
    return '';
  }
  $keywords = $params[$key];
  // 检查编码
  $encoding = mb_detect_encoding($keywords, 'utf-8,gbk');
  if ($encoding != 'utf-8') {
    $keywords = iconv($encoding, 'utf-8', $keywords);
  }
  return $keywords;
}

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

is_ref:是否被引用(只可能是0或者1)

函数测试:

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

赋值的流程:

<?php
header("Content-Type: text/html; charset=utf-8");
$referers = array(
    'http://www.baidu.com/s?cl=3&wd=
					

本文由新金沙平台发布于新金沙平台,转载请注明出处:PHP线程的内存回收问题,PHP自定义函数获取搜索

关键词: 新金沙平台 奥门金沙网站