> 백엔드 개발 > PHP 튜토리얼 > dl函数不会用,该如何处理

dl函数不会用,该如何处理

WBOY
풀어 주다: 2016-06-13 10:08:14
원래의
1080명이 탐색했습니다.

dl函数不会用
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 或者全部路径,都不起作用,,费解???

------解决方案--------------------
首先不知道楼主用的是那个服务器,如果是linux,就不能用dll,而应该用so

其次dl函数不支持多线程的web server ,所以用dl的apache必须配置为prefork工作模式

最后不建议使用dl函数,还是直接配置扩展吧

------解决方案--------------------
手册内有如下例子:

PHP code
<?php // Example loading an extension based on OSif (!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.0if (!extension_loaded('sqlite')) {    $prefix = (PHP_SHLIB_SUFFIX == 'dll') ? 'php_' : '';    dl($prefix . 'sqlite.' . PHP_SHLIB_SUFFIX);}?><br><font color="#e78608">------解决方案--------------------</font><br>写到 php.ini中好一些  <br>5.3 不支持dl 函数 了!<br>win是 .dll  <br>linux 是.so<div class="clear">
                 
              
              
        
            </div>
로그인 후 복사
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿