Archive for the ‘PHP技术’ Category

GUID全局唯一标识符

一月 12, 2020 | In: PHP技术

知识点: 全局唯一标识符Globally Unique Identifier简称GUID, 也称作UUID(Universally Unique IDentifier) ,主要用于在拥有多个节点、多台计算机的网络或系统中,分配必须具有唯一性的标识符。 GUID是一个通过特定算法产生的二进制长度为128位的数字标识符,以5个组显示,由连字符分隔,格式为8-4-4-4-12(“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”),共36个字符(32个字母数字字符和4个连字符),其中每个 x 是 0-9 或 a-f 范围内的一个32位十六进制数。 在理想情况下,任何计算机和计算机集群都不会生成两个相同的GUID。GUID 的总数达到了2^128(3.4×10^38)个,虽然随机生成相同的GUID的概率不为零,但它足够接近零而可以忽略不计。为保证不生成重复的GUID,一般用于生成GUID的算法通常都加入了非随机的参数,以保证这种重复的情况不会发生。 GUID版本1是根据时间和节点ID(通常是MAC地址)生成;版本2 由标识符(通 ...

Composer的简单用法

一月 11, 2020 | In: PHP技术, 软件

Composer 是 PHP 的一个软件包依赖管理工具。PHP 开发人员可能每天都在频繁运行它的命令require, install 和 update。除此之外还有一些其他的 Composer 命令常用。 Composer 的安装 curl -LsS https://getcomposer.org/installer -o composer-setup.php php composer-setup.php show 等价于info,查看项目中所有已安装的软件包(包括依赖项),以及查看软件包的说明,所有这些信息都可以在文件composer.lock中找到。 1. 使用依赖关系树的形式查看 composer show -t 2. 筛选查看指定的软件包 composer show ‘symfony/*’ why 是depends的别名,用来确定哪些软件包需要指定的软件包。 composer why twig/twig why-not 是prohibits的别名,用来检查是哪些软件包将阻止安装或更新软件包。 composer why-not symfony/yaml outdated 等价于 composer shwo -l,在使用 composer update 升级软件包以前检测已安装的软件 ...

eAccelerator 配置和参数

四月 22, 2011 | In: PHP技术

背景 eAccelerator 是一个免费开源的PHP加速、优化、编译和动态缓存的项目,它可以通过缓存PHP代码编译后的结果来提高PHP脚本的性能。通过使用eAccelerator,可以优化PHP代码执行速度,降低服务器负载,使PHP应用执行速度提高1-10倍。 eAccelerator 项目诞生于2004年,当时它是作为 Turck MMCache 项目的一个分支提出并投入开发的。 Turck MMCache 由 Dmitry Stogov 开发,是个非常优秀的PHP内存缓存加速系统,如今仍然有很大部分 eAccelerator 的代码应用到该项目中。 原理 eAccelerator 通过把经过编译后的PHP代码缓存到共享内存中,并在用户访问的时候直接调用从而起到高效的加速作用。它的效率非常高,从创建共享内存到查找编译后的代码都在非常短的时间内完成,对于不能缓存到共享内存中的文件和代码,eAccelerator还可以把他们缓存到系统磁盘上。 安装: wget http://bart.eaccelerator.net/source/0.9.6.1/eaccel ...

php 5.3.3 源码中开始包含 php-fpm,不用专门再打补丁了,只需要解开源码直接configure,关于php-fpm的编译参数有 –enable-fpm –with-fpm-user=www –with-fpm-group=www –with-libevent-dir=libevent位置。 这个php-fpm 不再支持 php-fpm 补丁具有的 /usr/local/php/sbin/php-fpm (start|stop|reload)等命令,需要使用信号控制: master进程可以理解以下信号 SIGINT, SIGTERM 立刻终止 SIGQUIT 平滑终止 SIGUSR1 重新打开日志文件 SIGUSR2 平滑重载所有worker进程并重新载入配置和二进制模块 示例: php-fpm 关闭: kill -SIGINT `cat /usr/local/php/var/run/php-fpm.pid` php-fpm 重启: kill -SIGUSR2 `cat /usr/local/php/var/run/php-fpm.pid` 其次配置文件不再使用的xml 格式,改为了INI,但是配置参数几乎和以前一样,可参照xml格式的格式配置。 —————-补充内容——— ...

PHP的Google翻译API

四月 8, 2010 | In: PHP技术

< ?php /** * Google翻译的API */ class Google_translate_API { public $out = ""; public $text = ""; public $opts = array("text" => "", "language_pair" => ""); function setValues($text,$fromLanguage,$toLanguage) { if($text != "") $this->opts["text"] = $text; if($fromLanguage != "" && $toLanguage != "") $this->opts["language_pair"] = $fromLanguage."|".$toLanguage; } function translate() { $this->out = ""; if (strlen($this->opts['text']) > 500) { $str1 = cSubStr($this->opts['text'],0,480); $str2 = cSubStr($this->opts['text'],480,(strlen($this->opts['text']-480))); $google_translator_url1 = "http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=".urlencode($str1)."&langpair=".urlenco ...

分类

归档

ipv6 ready