win7 安装php插件imagick

 

 

win7 安装php插件imagick

 

安装步骤:

步骤一:先安装好扩展包

之所以先安装扩展是因为扩展的版本要与软件版本对应,而扩展版本出来的速度比软件版本要慢得多,所以总是没法支持最新版本的软件,因此最好是根据自己安装的扩展来选择安装的ImageMagick软件版本。

首先Imagic的php扩展包下载地址:http://pecl.php.net/package/imagick

首先根据你自己的php版本选择,如果不知道自己的版本可以查看phpinfo,下面我截图自己的给个示范:

下面红框标识的地方都是要注意的,最上面是php版本,我的是5.5.30版本的,另外是服务器环境是x86的,也就是32位的,如果这里是64就是64位的,要注意。

再接着就是看php的安全线程情况:disabled是关闭状态,enable是开启状态,我的安全线程是关闭的,这里一定要留意

下面来看上面的下载页面是什么情况:这里有最新的各个版本imagick的php扩展,也写明了要求的版本,这里支持的ImageMagick版本是6.5.3-6.10的,并且php版本要高于5.4。

如果你的php版本低于这个,那么可能你需要找更低的扩展版本了,而且软件的版本也随之更低,这篇博文与你的安装情况应该是有出入的,顶多做个参考,例如低版本的ImageMagick是需要手动进行系统变量path配置的,高版本的都自动安装时勾选了自动配置了。

好了下面进入上面给的扩展下载页面会看到如下图片的显示:

红框里是我选择的版本,基本上这个是最新的且是稳定版本所以还是很好的选择,当然也可以根据自己的情况选择其他的版本,但注意选择stable稳定版本比较好,点击蓝色windows标识的DDL进入windows的版本选项,下面有截图。

根据上面我们看phpinfo得到的各个参数,这里选择php5.5版本的,并且是Non Thread Safe版本,同时32位,因此应该选择红框里的版本下载。

下载完毕后我们来看看里面有些什么东西:

用红框标识的都是在php安装imagick扩展所需要用到的:

1)最下面的php_imagick.dll放入php安装文件夹的ext扩展文件夹内

2)上面的dll文件直接放入php安装文件夹,如果是phpstudy多版本的php话,放入自

ps:这个地方同样dll还要放到apache里的bin目录里面 切记

己使用的版本对应的文件夹,例如php55n就是指php5.5以上但不高于5.6的版本

再来就是改php的配置文件,打开php.ini文件,像下图那样加上extension=php_imagick.dll的扩展配置。

完成这些配置后,重启电脑和服务器再打开phpinfo就可以看到imagick的扩展了,如果phpinfo里没有imagick则标识扩展表示没有安装成功,错误的可能性是服务器参数和php参数与imagick扩展参数不一致导致,因此检查上述的版本是否对应一致。

然后看phpinfo里面的imagick

查看这个Imagick compiled with ImageMagick version这个参数 ImageMagick 6.8.9-1 Q16 x86 2014-05-08 要安装这个 版本一定要对应 装好以后

 

需要 新建一个系统环境变量名为MAGICK_HOME,值为E:\你的imagick路径\modules\coders, 这步主要用来定位imagemagick的module,很重要。( 否则支持的图片格式数量默认为0 ImageMagick number of supported formats:  => 0 )

 

然后重启(必须重启)

然后再看PHPinfo ImageMagick supported formats 就会出现信息了 就是安装完成了 可以用了

如果没有信息 那就没办法了

 

这个是所有imagick历史版本 http://ftp.icm.edu.pl/packages/ImageMagick/binaries/

 

PHP判断是否为手机端的方法

PHP判断是否为手机端的方法

private function ismobile()
{
// 如果有HTTP_X_WAP_PROFILE则一定是移动设备
if (isset($_SERVER[‘HTTP_X_WAP_PROFILE’])) {
return true;
}

//此条摘自TPM智能切换模板引擎,适合TPM开发
if (isset($_SERVER[‘HTTP_CLIENT’]) && ‘PhoneClient’ == $_SERVER[‘HTTP_CLIENT’]) {
return true;
}

//如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息
if (isset($_SERVER[‘HTTP_VIA’]))
//找不到为flase,否则为true
{
return stristr($_SERVER[‘HTTP_VIA’], ‘wap’) ? true : false;
}

//判断手机发送的客户端标志,兼容性有待提高
if (isset($_SERVER[‘HTTP_USER_AGENT’])) {
$clientkeywords = array(
‘nokia’, ‘sony’, ‘ericsson’, ‘mot’, ‘samsung’, ‘htc’, ‘sgh’, ‘lg’, ‘sharp’, ‘sie-‘, ‘philips’, ‘panasonic’, ‘alcatel’, ‘lenovo’, ‘iphone’, ‘ipod’, ‘blackberry’, ‘meizu’, ‘android’, ‘netfront’, ‘symbian’, ‘ucweb’, ‘windowsce’, ‘palm’, ‘operamini’, ‘operamobi’, ‘openwave’, ‘nexusone’, ‘cldc’, ‘midp’, ‘wap’, ‘mobile’,
);
//从HTTP_USER_AGENT中查找手机浏览器的关键字
if (preg_match(“/(” . implode(‘|’, $clientkeywords) . “)/i”, strtolower($_SERVER[‘HTTP_USER_AGENT’]))) {
return true;
}
}
//协议法,因为有可能不准确,放到最后判断
if (isset($_SERVER[‘HTTP_ACCEPT’])) {
// 如果只支持wml并且不支持html那一定是移动设备
// 如果支持wml和html但是wml在html之前则是移动设备
if ((strpos($_SERVER[‘HTTP_ACCEPT’], ‘vnd.wap.wml’) !== false) && (strpos($_SERVER[‘HTTP_ACCEPT’], ‘text/html’) === false || (strpos($_SERVER[‘HTTP_ACCEPT’], ‘vnd.wap.wml’) < strpos($_SERVER['HTTP_ACCEPT'], 'text/html')))) { return true; } } return false; }

php判断是不是https的方法

php判断是不是https的方法

    public function is_https()
    {
        if (!empty($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) !== 'off') {
            return true;
        } elseif (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https') {
            return true;
        } elseif (!empty($_SERVER['HTTP_FRONT_END_HTTPS']) && strtolower($_SERVER['HTTP_FRONT_END_HTTPS']) !== 'off') {
            return true;
        }

        return false;
    }

PHP curl下载图片的方法

PHP curl下载图片的方法


<?php


$images = [
  'http://wx.qlogo.cn/mmopen/vi_32/Q0j4TwGTfTKPkia3rxjuBoSQ1sUSmqYXDazibuIp8p2CCialBPjeYvcNJgky9P7hmlnDKgzX91utEQPu7VtsDqAIg/0',
];
function download($url, $path = 'dowloadceshi/2015-09-22_00-17-06j.png')
{
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
  $file = curl_exec($ch);

  curl_close($ch);
  $filename = pathinfo($url, PATHINFO_BASENAME);

  $resource = fopen($path, 'a');
  fwrite($resource, $file);
  fclose($resource);
}

foreach ( $images as $url ) {
  download($url);
}
?>

ps:如果采用file_get_contents方法发生图片下载过慢

php sublime常用插件

php sublime常用插件

1 Sublime Text的默认设置是不开启显示编码的,如果想开启,可通过菜单Perference → Settings – User,在打开的配置文件里 ,在大括号后面,增加以下内容:// Display file encoding in the status bar”show_encoding”: true,// Display line endings in the status bar”show_line_endings”: true,此时保存该配置文件,就能够看到sublime最底下一行会显示文件编码格式了。以上的配置内容在Perference → Setting─Default都是false的。 注意需要复制到user才能改 默认改不了

2 常用的快捷键
ctrl+p可以快速查找文件

3安装风格spacegray
直接用pci安装 搜索spacegray
安装玩然后选择就行了 另外修改下配置文件

   "theme": "Spacegray.sublime-theme",
"color_scheme": "Packages/Theme - Spacegray/base16-ocean.dark.tmTheme",
    "highlight_line": true,
 
    "spacegray_sidebar_font_xlarge": true,
    "spacegray_sidebar_tree_large": true,
    "spacegray_tabs_auto_width": true,
    "spacegray_tabs_font_large": true,
    "spacegray_tabs_xlarge": true,
 
    "line_padding_bottom": 3,
    "line_padding_top": 3,
 
	"font_size": 14

4 SideBarEnhancements插件安装 用于新建 复制文件

5ctrl+R查找函数 还有个brow 什么package里面 新建个Default (Windows).sublime-mousemap 然后

[
{
"button": "button2",
"count": 1,
"modifiers": ["ctrl"],
"command": "jump_back"
},


{
"button": "button1",
"count": 1,
"modifiers": ["ctrl"],
"press_command": "drag_select",
"command": "goto_definition"
}
]

复制进去 就支持ctrl+左键了 ctrl+右键还可以跳回

5 设置键盘快捷键 格式化代码

{ "keys": ["ctrl+alt+l"], "command": "reindent" }

6 Clipboard History插件
Ctrl+shift+v:可以看到粘贴历史

7 Bracket Highlighter
功能:代码匹配

简介:可匹配[], (), {}, “”, ”, ,高亮标记,便于查看起始和结束标记

使用:点击对应代码即可

8 开启PHP报错提示
sublimeliner

sublimeliner-php 两个

安装好了之后

打开preferences -> package-setting -> sublimeliner-> settings–user

“mark_style”: “outline”,
“no_column_highlights_line”: false,
“passive_warnings”: true,
“paths”: {
“linux”: [],
“osx”: [],
“windows”: [
“D:\\wamp\\bin\\php\\php5.5.12”
]
},
“python_paths”: {
“linux”: [],
“osx”: [],
“windows”: []
},

就是添加一下 paths的参数值,指定一下你本地php目录。

然后关闭sublime,再次打开一个php脚本,试试吧。

有错误的地方在行号上会有红点提示在代码上会有红色方框,鼠标放红色方框上,错误信息在编辑器底部状态栏显示。

9格式化用codeformatter插件 php设置下路径就好
建议不用codeformatter格式化html

用 HTML-CSS-JS Prettify 插件来格式化 需要装nodejs 然后设置路径
格式化快捷键ctrl+shift+h

ps:导出sublime3所有插件和配置方法

C:\Users\Administrator\AppData\Roaming\Sublime Text 3
Packages和Installed Packages放到新的sublime3相应的路径即可