小编Dan*_*ack的帖子

如何使用PHP OPCache?

PHP 5.5已经发布,它有一个名为OPCache的新代码缓存模块,但似乎没有任何文档.

那么它的文档在哪里以及如何使用OPcache?

php opcache

242
推荐指数
3
解决办法
25万
查看次数

MySQL抛出错误的字符串值错误

我正在尝试将以下推文存储到longtext列/ utf8 charset/MySQL 5.5中.带有MyISAM存储的数据库.

我们也尝试过utf8mb4,utf16,utf32字符集,但无法解决这个问题.

tweet="@Dorable_Dimples: Okay enough of those #IfYouWereMines I'm getting dep
ressed. #foreveralone ?" lol yes

mysql> ALTER DATABASE foo CHARACTER SET utf8 COLLATE utf8_bin;

mysql> show variables like 'char%';
+--------------------------+-------------------------------------------+
| Variable_name | Value |
+--------------------------+-------------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /rdsdbbin/mysql-5.5.12.R1/share/charsets/ | …
Run Code Online (Sandbox Code Playgroud)

mysql hibernate utf-8 utf8mb4

36
推荐指数
4
解决办法
4万
查看次数

mysql_connect(localhost/127.0.0.1)在Windows平台上运行缓慢

我使用的是Windows 7,Apache 2,PHP 5,MySQL 5,它们都在同一台机器上.我发现了一个有趣的问题,我有以下代码:

    $sql = "select * from user1";
    $conn = mysql_connect("localhost", "root", "xxxxxxxx");
    mysql_select_db("test1");
    mysql_query("set names utf8");
    $result = mysql_query($sql, $conn);
    while ($row = mysql_fetch_assoc($result)){
        foreach ($row as $key => $value){
            echo $key." => ".$value." || ";
        }
        echo "<br/>";
    }
    mysql_free_result($result);
    mysql_close($conn);
Run Code Online (Sandbox Code Playgroud)

上述代码的运行时间超过1秒.

当我使用127.0.0.1而不是时localhost,运行时间约为10毫秒.

我试图在互联网上找到根本原因,结果如下:

我最近将我的开发从XP迁移到Windows 7,发现我开发的网页需要5秒钟才能加载.这当然是不可接受的,所以我不得不追查问题.我最终追踪了有问题的函数/方法pdo :: construct.我还发现mysql_connect大约需要1秒才能建立连接.经过一番谷歌搜索后,我发现一个解释说明php存在IPv6问题,你可以通过在建立连接时禁用IPv6或切换到ipaddress 127.0.0.1来解决问题.

我想知道PHP上的IPv6问题是什么,只是想深入了解.谢谢.

php mysql performance localhost mysql-connect

21
推荐指数
2
解决办法
1万
查看次数

在go lang中将字符串转换为uint

我试图使用以下代码将字符串转换为32位ubuntu上的uint.但是它始终在uint64中转换它,尽管在函数中明确地传递了32作为参数.下面的代码mw是图像magick库的对象.哪个和uint什么时候返回.此外,它接受resize函数中的type参数. mw.getImageWidth()mw.getImageHeight()uint

    width :=  strings.Split(imgResize, "x")[0]
    height := strings.Split(imgResize, "x")[1]

    var masterWidth uint = mw.GetImageWidth() 
    var masterHeight uint = mw.GetImageHeight() 

    mw := imagick.NewMagickWand()
    defer mw.Destroy()

    err = mw.ReadImageBlob(img)
    if err != nil {
            log.Fatal(err)
        } 

    var masterWidth uint = mw.GetImageWidth() 
    var masterHeight uint = mw.GetImageHeight()

    wd, _ := strconv.ParseUint(width, 10, 32)
    ht, _ := strconv.ParseUint(height, 10, 32)

   if masterWidth < wd || masterHeight < ht { 
     err = mw.ResizeImage(wd, ht, imagick.FILTER_BOX, 1) …
Run Code Online (Sandbox Code Playgroud)

go go-imagick

13
推荐指数
1
解决办法
2万
查看次数

ImageMagick无需插值即可调整大小

我有一个小像素图 原版的 并希望调整其大小以提高可读性.

使用mogrify -resize 1600%我获得插值图像:错误.

我想要得到的是: 对.

可以通过ImageMagick或任何其他开源命令行工具完成吗?

resize imagemagick

12
推荐指数
2
解决办法
1960
查看次数

Composer排除特定版本

如何编写排除库的多个特定版本的require规则?

例如,我对库的任何1.7.*版本都有要求

"require": {
    "some/lib": "~1.7"
}
Run Code Online (Sandbox Code Playgroud)

但后来我发现版本1.7.3中的库存在问题,并希望防止安装,这可以通过以下方式完成:

"require": {
    "some/lib": ">=1.7, <1.7.3 | >1.7.3"
}
Run Code Online (Sandbox Code Playgroud)

哪个已经变丑了.然后我们发现该库的另一个问题,并希望排除版本1.7.7.尝试使用与上面相同的语法似乎很糟糕,什么是排除特定版本的库的更好方法?

TL:DR有这样的语法:

"require": {
    "some/lib": "~1.7, !1.7.3, !1.7.5"
}
Run Code Online (Sandbox Code Playgroud)

这样可行?

composer-php

11
推荐指数
1
解决办法
993
查看次数

Imagick没有加载图像,带有'NoDecodeDelegateForThisImageFormat'错误消息

试图创建一个缩略图,但我得到一些错误,我没有使用Imagick的经验.

这是我的PHP:

<?php
try {
    $imagick = new Imagick();
    $imagick->readImage('C:\xampp\htdocs\ppa\032.JPG');
    $imagick->thumbnailImage(800, 800);
    $imagick->writeImage('032(2).JPG');
}
catch(Exception $e) {
    die('Error when creating a thumbnail: ' . $e->getMessage());
}
?>
Run Code Online (Sandbox Code Playgroud)

然后我得到这个错误代码:

创建缩略图时出错:NoDecodeDelegateForThisImageFormat`C:\ xampp\htdocs\ppa\032.JPG'@ error/composed.c/ReadImage/555

这是我用一些代码生成的一些信息,我再也找不到了......:/

Array
(
    [GD Version] => bundled (2.1.0 compatible)
    [FreeType Support] => 1
    [FreeType Linkage] => with freetype
    [T1Lib Support] => 
    [GIF Read Support] => 1
    [GIF Create Support] => 1
    [JPEG Support] => 1
    [PNG Support] => 1
    [WBMP Support] => 1
    [XPM Support] => 1
    [XBM Support] …
Run Code Online (Sandbox Code Playgroud)

php imagick

11
推荐指数
2
解决办法
2万
查看次数

如何让PHP能够读取系统环境变量

我在Centos上使用PHP作为PHP-FPM.我试图遵循http://12factor.net/指南将设置存储在环境变量中.

我在/etc/profile.d中创建了一个文件来设置我想要的环境变量,并且在CLI中通过Bash测试环境变量时出现,即运行bash脚本:

echo $SOME_SERVER_SETTING
Run Code Online (Sandbox Code Playgroud)

显示正确的输出.

我已将clear_env设置为false并将variables_order设置为EGPCS,但是,我设置的变量不会在PHP中显示getenv('SOME_SERVER_SETTING')或执行var_dump($_ENV)

需要设置哪些其他设置以允许PHP-FPM接收所有服务器环境变量,特别是那些通过Centos上/etc/profiles.d中的shell脚本设置的变量?

php centos environment-variables

9
推荐指数
2
解决办法
1万
查看次数

Composer选项使用composer.json的替代方法?

我刚开始使用Composer功能,你告诉它查看本地目录中的依赖项,这样你就可以开发一个库和一些并行使用该库的东西,而不必一直推送到git来更新,这是真棒.例如

"repositories": [
    {
        "type": "vcs",
        "url": "/documents/projects/github/guzzle"
    }
],

"require":{
    "guzzle/guzzle": "3.7.*@dev"
}
Run Code Online (Sandbox Code Playgroud)

因此,当您进行作曲家更新时,Composer将从本地目录中提取Guzzle的版本,因此您可以在另一个使用该库的应用程序中测试库的代码,而无需在每次代码更改之间推送到存储库.

但是我几乎在composer.json中检查了我的项目 - 这显然不适用于任何elses机器.

反正有没有告诉作曲家使用不同于composer.json的文件,或者其他方式能够告诉作曲家安全地使用本地目录,而不是很有可能意外地将一个破碎的composer.json版本提交到你的存储库?

composer-php

6
推荐指数
2
解决办法
3241
查看次数

在C#中更新对象时会话对象发生更改

我有这个非常奇怪的问题,我确信我在这里遗漏了一些明显的东西.我有这两行:

HttpContext.Current.Session[listModelType + "ListModel"] = listModel;
listModel.ProductRows = new Collection<ProductRow>(listModel.ProductRows.Where(r => r.ParentRowId == 0).ToList());
Run Code Online (Sandbox Code Playgroud)

执行第二行后,我的会话对象也会更新(根据Visual Studio中的"Watch")

我在这里错过了什么?

我试过了

int i = 0;
HttpContext.Current.Session["i"] = i;
i++;
Run Code Online (Sandbox Code Playgroud)

和HttpContext.Current.Session ["i"]保持为0.

.net c# asp.net session session-variables

6
推荐指数
1
解决办法
6464
查看次数