2016-05-09 7 views
1

Обычно я разрабатываю веб-сайты PHP, используя текстовый редактор в каталоге Unix Apache htdocs, а сайты, использующие GD-библиотеку, просто работают «из коробки».Библиотека GD в локальном экземпляре PHP, запущенного из Netbeans с xdebug

Однако для этого нового клиента мне сказали использовать их существующую инфраструктуру с Netbeans, поскольку IDE работает на PHP локально на машине под Windows, у которой нет Apache. Сайт, в конечном счете, будет развернут в обычной среде Apache/PHP, где он работает нормально.

Практически все работает нормально локально, за исключением того, что библиотека GD, однако включена в php.ini, не работает. Код с помощью GD терпит неудачу с этой ошибкой:

Fatal error: Uncaught Error: Call to undefined function imagecreate() 

Когда я выполнить этот файл в командной строке:

<?php //session_start(); 
print_r(get_loaded_extensions()); 
?> 

его выход включает в себя модуль GD поэтому она должна быть полезной в коде:

C:\Program Files\PHP>php 1.php 
Array 
(
    [0] => Core 
    [1] => bcmath 
    [2] => calendar 
    [3] => ctype 
    [4] => date 
    [5] => filter 
    [6] => hash 
    [7] => iconv 
    [8] => json 
    [9] => mcrypt 
    [10] => SPL 
    [11] => pcre 
    [12] => Reflection 
    [13] => session 
    [14] => standard 
    [15] => mysqlnd 
    [16] => tokenizer 
    [17] => zip 
    [18] => zlib 
    [19] => libxml 
    [20] => dom 
    [21] => PDO 
    [22] => bz2 
    [23] => SimpleXML 
    [24] => xml 
    [25] => wddx 
    [26] => xmlreader 
    [27] => xmlwriter 
    [28] => openssl 
    [29] => curl 
    [30] => fileinfo 
    [31] => gd 
    [32] => gettext 
    [33] => gmp 
    [34] => intl 
    [35] => mbstring 
    [36] => exif 
    [37] => mysqli 
    [38] => Phar 
    [39] => pdo_mysql 
    [40] => PDO_ODBC 
    [41] => pdo_sqlite 
    [42] => soap 
    [43] => sockets 
    [44] => sqlite3 
    [45] => tidy 
    [46] => xmlrpc 
    [47] => xsl 
    [48] => xdebug 
) 

Но когда я использую ту же функцию в PHP странице она не включает в себя, как много расширений:

Array ([0] => Core [1] => bcmath [2] => calendar [3] => ctype [4] => date [5] => filter [6] => hash [7] => iconv [8] => json [9] => mcrypt [10] => SPL [11] => pcre [12] => Reflection [13] => session [14] => standard [15] => mysqlnd [16] => tokenizer [17] => zip [18] => zlib [19] => libxml [20] => dom [21] => PDO [22] => Phar [23] => SimpleXML [24] => xml [25] => wddx [26] => xmlreader [27] => xmlwriter [28] => cli_server [29] => xdebug) 

Это значит, что что-то в php.ini неверно, и PHP работает в командной строке, но не от Netbeans?

Как включить библиотеку GD в этой локальной среде?

+0

Проверьте файл php.ini, который использует netbeans, и убедитесь, что расширение GD включено. – Dekel

+0

Сравните вывод 'php -ini' в командной строке с выходом' phpinfo() 'на веб-странице. Вероятно, вы найдете разные файлы INI. – timclutton

+0

В обоих случаях это был тот же ИНИ. Но машина была перезапущена в одночасье, и теперь все работает. Не уверен, что это было и почему. – Faqit

ответ

0

Я все еще не понимаю, что произошло, но после перезагрузки машины разработки все неожиданно сработало. Библиотека GD загружена и работает нормально. Это может иметь какое-то отношение к путям, добавленным в переменную PATH, возможно, нет, не уверен.

Также я пытался получить xdebug, чтобы работать и останавливаться на контрольных точках безрезультатно, но после перезагрузки он тоже начал работать.

 Смежные вопросы

  • Нет связанных вопросов^_^