เวอร์ชั่น PHP ที่แสดงในบรรทัดคำสั่งนั้นแตกต่างจาก phpinfo (); ใน localhost: 8000


9

ฉันเริ่มเซิร์ฟเวอร์ทดสอบ OS X PHP ของฉันโดยพิมพ์

php -S localhost:8000

ฉันอัปเดต PHP ของฉันใน OS X เป็น 5.6 และเมื่อฉันตรวจสอบเวอร์ชันผ่านบรรทัดคำสั่งโดยพิมพ์:

php -v

มันบอกฉันว่าฉันมี "PHP 5.6.5"

เมื่อฉันเริ่มต้นเซิร์ฟเวอร์ทดสอบ PHP ของฉันและดูไฟล์ index.php ที่มีphpinfo();ฟังก์ชั่นมันบอกฉันว่าฉันยังมีรุ่น 5.5.14 ที่มาพร้อมกับ OS X

ฉันจะทำอย่างไรเพื่อให้ได้ PHP เวอร์ชันของฉันบน localhost: 8000 เพื่อแสดงถึงการเปลี่ยนแปลงนั้น?


คุณติดตั้ง PHP ที่ปรับปรุงแล้วและ $ PATH ปัจจุบันของคุณคืออะไร (พิมพ์echo $PATHในเทอร์มินัล) ดูเหมือนว่า $ PATH จะไม่ได้รับการติดตั้งเพื่อค้นหา PHP เวอร์ชันใหม่
sdmeyers

ฉันติดตั้งเป็น "/ usr / local" เมื่อฉันตรวจสอบเส้นทางด้วย "echo $ PATH" ฉันเห็น "/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Applications/Server.app /Contents/ServerRoot/usr/bin:/Applications/Server.app/Contents/ServerRoot/usr/sbin" ฉันลบแอปเซิร์ฟเวอร์เมื่อเร็ว ๆ นี้ ฉันควรส่งออกเส้นทางหรือไม่
AndrewMRiv

คำตอบ:


1

รุ่นใหม่ของ PHP จะต้องอยู่ใน $ PATH ของคุณและเส้นทางไปยังรุ่นใหม่ของ PHP /usr/binจะต้องมีการระบุไว้ก่อน หากมีการติดตั้ง php เวอร์ชันใหม่ (ปฏิบัติการ) /usr/local/bin/คุณควรจะมีรูปร่างที่ดีมิฉะนั้นคุณต้องลิงก์ php ใหม่ที่ปฏิบัติการได้ที่นั่น ( ln -s /path/to/newphp /usr/local/bin/php) หรือเพิ่มตำแหน่งของมันลงใน $ PATH ( export PATH=/path/to/newphp:"${PATH}") (<- เพิ่มสิ่งนี้ลงใน ~ / .bash_profile)

อีกหนึ่งความเป็นไปได้ที่จะตรวจสอบ ... มีชื่อรุ่นใหม่ของ php phpหรือไม่ เป็นไปได้ว่ามันจะมีชื่อบางอย่างเช่นphp5หรือบางสิ่งบางอย่าง ถ้าเป็นเช่นนั้นคุณจะต้องสร้างลิงก์ aa หรือใช้ชื่อนั้นในบรรทัดคำสั่ง


1
ฉันอัปเกรดเป็น PHP 7 แล้ว/usr/local/bin/แต่เวอร์ชันของฉันยังคงอยู่ใน 5.6.24 ตัวติดตั้งสร้างนามแฝง php5 และฉันสร้างนามแฝง php ด้วยตนเอง แต่ทั้งคู่<?php phpinfo();?>และphp -vบอกฉันว่าฉันใช้อันเก่า และฉันก็พยายามexport PATH=/usr/local/bin/php5-7.0.11-20160923-203451:"${PATH}"เช่นกัน
James Wayne

@JamesWayne ลองส่งออก PATH = / usr / local / php5 / bin: $ PATH
bart

ก่อนอื่นคำสั่งพา ธ นั้นผิดทั้งหมด ... ติดตั้ง PHP เวอร์ชันใหม่ล่าสุดอยู่ที่ไหน (คุณติดตั้งอย่างไร)? เมื่อรู้อย่างนี้ฉันสามารถช่วยคุณในบรรทัดคำสั่ง (สมมติว่ามันติดตั้งอย่างถูกต้อง) ประการที่สองหลังจากอัพเดต PHP คุณได้กำหนดค่าเว็บเซิร์ฟเวอร์ของคุณใหม่เพื่อใช้ PHP เวอร์ชันใหม่หรือไม่
sdmeyers
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.