<?php
header("Content-type: image/png");
dl("php_gd2.dll");
$im = @imagecreate(100, 50)
    or die("Cannot Initialize new GD image stream");
$background_color = imagecolorallocate($im, 255, 255, 255);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5,  "A Simple Text String", $text_color);
imagepng($im);
imagedestroy($im);
?> 
例子不用怀疑,手册上抄的,关闭gd2拓展,我加了句dl("php_gd2.dll");不起作用,不管是./  ../  ext 或者全部路径,都不起作用,,费解???

解决方案 »

  1.   

    首先不知道楼主用的是那个服务器,如果是linux,就不能用dll,而应该用so其次dl函数不支持多线程的web server ,所以用dl的apache必须配置为prefork工作模式最后不建议使用dl函数,还是直接配置扩展吧
      

  2.   

    手册内有如下例子:<?php
    // Example loading an extension based on OS
    if (!extension_loaded('sqlite')) {
        if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) {
            dl('php_sqlite.dll');
        } else {
            dl('sqlite.so');
        }
    }// Or, the PHP_SHLIB_SUFFIX constant is available as of PHP 4.3.0
    if (!extension_loaded('sqlite')) {
        $prefix = (PHP_SHLIB_SUFFIX == 'dll') ? 'php_' : '';
        dl($prefix . 'sqlite.' . PHP_SHLIB_SUFFIX);
    }
    ?> 
      

  3.   

    写到 php.ini中好一些 
    5.3 不支持dl 函数 了!
    win是 .dll 
    linux 是.so