Rumah > pembangunan bahagian belakang > masalah PHP > Apakah yang perlu saya lakukan jika gambar yang disimpan semasa membangunkan akaun rasmi PHP tidak dipaparkan?

Apakah yang perlu saya lakukan jika gambar yang disimpan semasa membangunkan akaun rasmi PHP tidak dipaparkan?

PHPz
Lepaskan: 2023-04-18 10:12:07
asal
689 orang telah melayarinya

Apabila membangunkan akaun rasmi PHP, kami sering menghadapi beberapa masalah. Salah satu masalah biasa ialah imej tidak boleh dipaparkan semasa menyimpannya. Keadaan ini sering mengelirukan, jadi bagaimana kita menyelesaikannya?

1. Punca masalah

Dalam pembangunan akaun rasmi PHP, kadangkala kita perlu menyimpan imej yang dimuat naik oleh pengguna pada pelayan untuk kegunaan seterusnya. Walau bagaimanapun, ramai pembangun tidak mengambil kira format dan laluan menyimpan imej dengan jelas semasa menyimpan imej, menyebabkan imej tidak dipaparkan dengan betul.

2. Penyelesaian

  1. Pastikan laluan menyimpan adalah betul

Dalam PHP, kami biasanya menggunakan fungsi file_put_contents() untuk menyimpan imej pada pelayan. Walau bagaimanapun, jika laluan menyimpan tidak betul, imej tidak boleh dipaparkan dengan betul. Oleh itu, apabila kita menyimpan gambar, kita mesti mengesahkan bahawa laluan menyimpan adalah betul.

Sebagai contoh, jika kita ingin menyimpan imej dalam direktori akar tapak web:

$file = file_get_contents($path);
file_put_contents($_SERVER['DOCUMENT_ROOT'].$url,$file);
Salin selepas log masuk

Di sini $path ialah laluan mutlak imej dan $url ialah laluan relatif tempat imej disimpan. Dalam kod, kami menggunakan $_SERVER['DOCUMENT_ROOT'] untuk mendapatkan direktori akar tapak web dan menggabungkan direktori akar dan laluan relatif ke dalam laluan yang lengkap.

  1. Pastikan format imej adalah betul

Kadangkala, punca imej tidak dipaparkan dengan betul adalah kerana format imej tidak betul. Dalam PHP, kita boleh menggunakan fungsi getimagesize() untuk mendapatkan jenis imej, dan apabila menyimpan imej, tetapkan sambungan yang sepadan mengikut jenis.

Sebagai contoh, jika jenis imej yang diperoleh ialah JPEG, gunakan .jpg sebagai sambungan:

$path = 'example.jpg';
$size = getimagesize($path);
$ext = image_type_to_extension($size[2], false);
$picname = 'test'.$ext;
move_uploaded_file($path, $picname);
Salin selepas log masuk

Dalam kod, kami menggunakan fungsi image_type_to_extension() untuk menukar jenis imej kepada sambungan , dan kemudian gunakan fungsi move_uploaded_file() untuk menyimpan imej pada pelayan.

  1. Pastikan imej boleh diakses

Kadangkala, sebab imej tidak dipaparkan dengan betul adalah kerana imej tidak mempunyai set kebenaran yang betul. Selepas menyimpan imej, kita perlu menetapkan kebenaran yang betul untuk imej untuk memastikan imej itu boleh diakses secara normal.

Sebagai contoh, di bawah sistem Linux, kita boleh menggunakan fungsi chmod() untuk menetapkan kebenaran untuk gambar:

$file = 'test.jpg';
chmod($file, 0644);
Salin selepas log masuk

Dalam kod, kami menggunakan fungsi chmod() untuk menetapkan kebenaran fail ke 0644, ini memastikan bahawa imej boleh diakses dengan betul.

Ringkasan

Dalam pembangunan akaun rasmi PHP, adalah masalah biasa bahawa gambar yang disimpan tidak dapat dipaparkan dengan betul. Untuk mengelakkan perkara ini daripada berlaku, kami perlu mengesahkan bahawa laluan simpan adalah betul, format imej adalah betul dan imej boleh diakses. Hanya dengan cara ini kita boleh berjaya menyimpan imej dan mengaksesnya seperti biasa semasa penggunaan berikutnya. Saya harap kaedah di atas dapat membantu pembangun yang memerlukan.

Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika gambar yang disimpan semasa membangunkan akaun rasmi PHP tidak dipaparkan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan