cara mengubah jalur php ini windows

12

Saya telah mengunduh php, menambahkannya ke jalur saya dan saya mencoba mengaktifkan openssl

php --ini memberitahu saya bahwa file konfigurasi adalah c: \ windows yang tidak ada di sana, saya tidak ingin menyalin php ke c / windows.

Bagaimana cara mengubah ini ke titik di folder php saya?

Tamu
sumber

Jawaban:

10

Anda tidak perlu melakukan anthing dengan PHP di dekat c:\windowsfolder.

Jika Anda melakukannya, itu hanya akan mengacaukan Anda ketika Anda meningkatkan versi PHP ke versi baru.

Jika Anda CD ke folder tempat PHP diinstal dan melakukan php --iniitu akan membaca file php.ini dari folder tempat Anda berada.

D:\wamp\bin\php\php5.5.12>php --ini
Configuration File (php.ini) Path: C:\Windows
Loaded Configuration File:         D:\wamp\bin\php\php5.5.12\php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed:      (none)

Saya pikir itu juga ide yang buruk untuk meletakkan folder instal PHP di PATH windows juga.

Yang Anda butuhkan hanyalah file batch kecil yang akan mengatur PATH Anda selama durasi jendela perintah yang Anda gunakan, dan meletakkannya di salah satu folder yang sudah ada di PATH windows.

Jadi dengan asumsi Anda menginstal PHP ke dalam C:\phpini adalah file batch

phppath.cmd

PATH=%PATH%;C:\php
php --ini
php -v

Dan Anda kemudian jalankan file batch ini setiap kali Anda membuka jendela perintah dan ingin menjalankan beberapa kode PHP dan lingkungan Anda terkonfigurasi. Anda juga dapat menambahkan hal-hal lain ke file batch ini ketika Anda perlu hal-hal lain ditambahkan ke lingkungan Anda seperti Komposer dll.

RiggsFolly
sumber
Iya! Ini bekerja untuk saya. PHP.ini lebih baik dengan PHP.exe di folder yang sama sehingga Web dan CLI PHP dapat merujuk ke PHP.ini yang sama.
Scott Chu
@ScottChu Tidak juga, mereka adalah 2 lingkungan yang berbeda dan dalam kehidupan nyata Anda sering menginginkan konfigurasi yang berbeda untuk keduanya.
RiggsFolly
4

Menurut dokumentasi:

File konfigurasi (php.ini) dibaca ketika PHP dimulai. Untuk versi modul server PHP, ini terjadi hanya sekali ketika server web dimulai. Untuk versi CGI dan CLI, itu terjadi pada setiap doa.

php.ini dicari di lokasi-lokasi ini (secara berurutan):

  • Lokasi spesifik modul SAPI (arahan PHPIniDir di Apache 2, opsi baris perintah -c di CGI dan CLI, parameter php_ini di NSAPI, variabel lingkungan PHP_INI_PATH dalam THTTPD)
  • Variabel lingkungan PHPRC. Sebelum PHP 5.2.0, ini diperiksa setelah kunci registri yang disebutkan di bawah ini.
  • Pada PHP 5.2.0, lokasi file php.ini dapat diatur untuk versi PHP yang berbeda. Kunci registri berikut diperiksa secara berurutan: [HKEY_LOCAL_MACHINE \ SOFTWARE \ PHP \ xyz], [HKEY_LOCAL_MACHINE \ SOFTWARE \ PHP \ xy] dan [HKEY_LOCAL_MACHINE \ SOFTWARE \ PHP \ x], di mana x, y dan z berarti jurusan PHP, versi minor dan rilis. Jika ada nilai untuk IniFilePath di salah satu kunci ini, yang pertama ditemukan akan digunakan sebagai lokasi php.ini (hanya Windows).
  • [HKEY_LOCAL_MACHINE \ SOFTWARE \ PHP], nilai IniFilePath (hanya Windows).
  • Direktori kerja saat ini (kecuali CLI).
  • Direktori server web (untuk modul SAPI), atau direktori PHP (jika tidak di Windows).
  • Direktori Windows (C: \ windows atau C: \ winnt) (untuk Windows), atau --with-config-file-path opsi waktu kompilasi.

Anda harus mencoba PHPRCvariabel lingkungan atau kunci registri [HKEY_LOCAL_MACHINE\SOFTWARE\PHP].

Cornelius
sumber
0

Saya mencoba semuanya tanpa hasil. mengubah apache httpd.conf, php.ini dan beberapa upaya lainnya, selalu menghasilkan Loaded Configuration File - (tidak ada). Akhirnya, saya menyalin semua file dari direktori php ke direktori C: \ Program Files (x86) \ Apache Software Foundation \ Apache2.2 \ bin dan semuanya mulai bekerja. Sempurna. Sayangnya itu bukan solusi yang sempurna, tetapi berhasil.

Gunther
sumber