我在我的应用程序中使用 jQuery lightbox。我的应用程序在 PHP 5.2 上运行,并且可以与 jQuery 1.7.2 一起正常工作。我包含了 lightbox.css 和 jQuery 插件。
现在,我将它移动到另一个使用 PHP 5.3 的系统,在这个系统上,灯箱展示工作正常,但不显示缩略图。
<ul class="ad-thumb-list">
<?php
//for($i=0;$i<$gallery_list_count;$i++)
foreach($gallery_list as $key => $value)
{
$id = $value['id'];
$title = $value['title'];
$description = $value['description'];
$image = $value['image'];
$img = "../gallery_image/".$id."/".$image ;
$thumb_filename = splitfilename($image,'_th');
$thumb_image = "../gallery_image/".$id."/".$thumb_filename;
echo '<li><a href="'.$img.'" ><img src="'.$thumb_image.'" title="'.$title.'" /></a></li>';
} ?>
</ul>
此图像是从数据库中检索的。 灯箱显示为一个小点。 现在,我希望图像能够像在 PHP 5.2 中一样正确显示。我该如何实现?
最佳答案
很难确定,因为您没有向我们展示您的完整代码——具体来说,您没有向我们展示 splitfilename()
的作用。
但是,如果 splitfilename()
名副其实并使用了 PHP split()
函数,那么您的问题就很明显了。
自 PHP 5.3 起,PHP 的 split()
函数已弃用。在 PHP 5.3 中使用它会导致输出警告消息。
由于您使用 PHP 来显示图像文件,因此您不会看到该警告消息,但它会使您的图像文件无效,即使它的其余部分输出正确也是如此。
解决方案是将您的代码切换为使用 explode()
函数。
您还应该检查您是否正在使用 PHP 5.3 中弃用的任何其他功能,因为它们会给您带来同样的问题,因此您需要修复它们。
此外,那些在 5.3 中被弃用的功能在 PHP 5.4 中被完全删除,因此您应该认为这是一个紧急修复,在您发现自己需要再次升级之前完成。
最后,您还应该考虑检查 5.4 和 5.5 中弃用的功能。该列表中有一些相当重要的功能,如果您想在将来避免同样的问题,了解它们并开始重新编写代码以避免它们是很好的。
关于javascript - jQuery - 灯箱缩略图在 PHP 5.3 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20351019/