Я работаю в компании, в которой наши серверы и компьютер более плотно заблокированы, чем ... ну, вообразите что-то действительно трудное. Это означает, что я не могу использовать composer или установить его без горы документов. Я разработчик, обычно программирую на JS, а не php, но для этого проекта мне нужно получить информацию о CA C X509 со смарт-карт. Я занимался этим около 4 часов, пытаясь заставить работать phpseclib. Имейте в виду, я едва понимаю php. Я следую указаниям github и веб-сайта, в основном я скачал и распаковал файлы для 2.0 и поместил их в свой каталог, я следую примерам с веб-сайта, таким как http://phpseclib.sourceforge.net/x509/2.0/examples.html#getpublickey. но когда я делаю:
$x509 = new X509();
$x509->loadX509($_SERVER['SSL_CLIENT_CERT']);
echo $x509->getPublicKey();
Я получаю ошибку: Неустранимая ошибка: класс 'X509' не найден в ...
Я также пробовал другие вещи, такие как включение каталога в файл, например:
$x509 = new phpseclib\File\X509();
$x509->loadX509($_SERVER['SSL_CLIENT_CERT']);
echo $x509->getPublicKey();
и (новый phpseclib_File_X509) получить ошибку: Неустранимая ошибка: класс 'phpseclib \ File \ X509' не найден в ...
Пожалуйста, помогите! Мне никогда не приходилось делать автозагрузку, и я чувствую, что это проблема? Как файлы не загружаются? Я также сделал оба ниже в отдельное время, но безрезультатно.
include'phpseclib/File/X509.php';
use phpseclib\File\X509;
Когда я помещаю журнал ошибок в X509, чтобы проверить там, я получаю, что ASN1 также не найден.
РЕДАКТИРОВАТЬ: Также поможет узнать, что моя php версия 5.5.26