2015-07-10 2 views
0
<?php 
$file = file_get_contents('https://s3.amazonaws.com/cloudplus/us-east-1%3A4eddd3f9-3729-473f-984c-16fddfe5e23f/Contacts/Contacts_1436328498.vcf'); 
?> 

Я не знаю, почему это шоу ошибка, как это [function.file-получить содержание]: не удалось открыть поток: недопустимый аргументPHP: не удалось открыть поток: недопустимый аргумент

+0

его рабочий тон. Просто 'print_r ($ file);', чтобы увидеть результат. – SHAZ

+0

вы включили 'allow_url_fopen' в свой' php.ini'? @SHAZ - разве вы не имеете в виду 'print $ file', так как возвращаемое значение не является массивом? – Cyclonecode

+0

@cyclone Я не знаю, как это сделать, сэр –

ответ

2

Убедитесь, так что у вас есть allow_url_fopen включен в вашем файле php.ini.

Чтобы отредактировать файл php.ini проверку если allow_url_fopen включен вы можете проверить выход phpInfo(), чтобы найти местоположение файла php.ini, а затем открыть этот файл в текстовом редакторе и искать allow_url_fopen и убедитесь, таким образом, это установлено до On.

Чтобы найти местоположение файла php.ini вы могли бы сделать, как это из терминала:

php -r 'phpInfo();' | grep php.ini 

После размещения файла вы можете редактировать его с помощью текстового редактора, как nano, например:

sudo nano /etc/private/php.ini 

После изменения файла конфигурации убедитесь, чтобы вы перезапустить Apache с помощью:

sudo apachectl restart 

Вы также можете проверить, есть ли подходящие обертки для https:

$wrappers = stream_get_wrappers(); 
echo 'openssl: ', extension_loaded ('openssl') ? 'yes':'no', "\n"; 
echo 'https wrapper: ', in_array('https', $wrappers) ? 'yes':'no', "\n"; 
echo 'wrappers: ', var_dump($wrappers); 

Если нет https обертки не включена, и вы бежите окна вы снова должны отредактировать файл php.ini и раскомментировать эту строку:

;extension=php_openssl.dll 

Как и раньше, вам необходимо перезагрузить сервер, чтобы изменения вступили в силу.

+0

Спасибо, сэр. но allow_url_fopen уже включен –

+0

openssl: no https wrapper: no wrappers: array (6) {[0] => string (3) "php" [1] => string (4) "file" [2] => string (4) «данные» [3] => строка (4) «http» [4] => строка (3) «ftp» [5] => строка (13) «compress.zlib»} Она отображается так: –

+1

@KeeratiPongram - Вы используете окна? Затем, как я сказал в моем обновленном ответе, вы должны отредактировать свой 'php.ini' и раскомментировать эту строку' extension = php_openssl.dll', удалив ведущий символ ';'. Обратите внимание, что вам необходимо перезагрузить сервер, чтобы изменения вступили в силу. – Cyclonecode

1

Вы должны использовать следующая функция:

print_r 

так что ваш код выглядит следующим образом:

<?php 
$file = https://s3.amazonaws.com/cloudplus/us-east-1%3A4eddd3f9-3729-473f-984c-16fddfe5e23f/Contacts/Contacts_1436328498.vcf; 
print_r($file); 
?> 
Смежные вопросы