PHP Heroku上的多字节字符串


PHP Multibyte String on Heroku

有人知道如何安装PHP扩展:Heroku的多字节字符串:http://php.net/manual/en/book.mbstring.php

下面是我为Heroku安装Mongo的过程:

https://gist.github.com/1288447

一切正常,但是我找不到编译mbstring.so文件的源代码。

请指教。

获得Heroku扩展的首选方法是使用composer.json。mbstring是Heroku根据https://devcenter.heroku.com/articles/php-support#extensions

提供的预编译和共享的扩展之一。

要使用它,你所要做的就是创建一个composer。在项目的根目录下创建一个Json文件(如果你还没有),包含以下内容:

{
    "require": { 
        "ext-mbstring": "*"
    }
}

不需要编译自己的mbstring扩展名或从其他地方获取编译后的版本。

作为旁注,也不再需要自己编译MongoDB扩展。它也在heroku提供的扩展列表中,您可以有一个编写器。Json文件两者都做,像这样:

{
    "require": { 
        "ext-mbstring": "*",
        "ext-mongo": "*"
    }
}

如果您从https://github.com/wuputah/heroku-libraries/raw/master/php/mongo/mongo.so下载的文件mongo。它已经被编译过了。您只需要转到php.ini并设置extension_dir = "dir where you put mongo.so"extension=mongo.so

您可以使用以下命令确保它被编译:

$ file mongo.so
mongo.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, not stripped

我不确定的是这个二进制文件是否适合linux…

我编译了mbstring。Heroku也是如此。它工作得很好。http://en.blog.candycane.jp/2012/04/11/running-php-on-heroku-with-mbstring/