我使用codeingniter上传了使用 class Selections{
ArrayList<String> items = new ArrayList<String>();
final ArrayList<String> combinationOne = new ArrayList<String>();
final ArrayList<String> combinationTwo = new ArrayList<String>();
final ArrayList<String> combinationThree = new ArrayList<String>();
final ArrayList<String> combinationFour = new ArrayList<String>();
JList list = null;
public Selections(){
items.add("11");
items.add("21");
items.add("31");
items.add("41");
items.add("12");
items.add("22");
items.add("32");
items.add("42");
list = new JList(items.toArray());
combinationOne.add("11");
combinationOne.add("12");
combinationTwo.add("21");
combinationTwo.add("22");
combinationThree.add("31");
combinationThree.add("32");
combinationFour.add("41");
combinationFour.add("42");
}
public static void main(String[] args) throws Exception {
Selectionsselections = new Selections();
selections.runApp();
}
private void runApp() {
MouseMotionListener mouseMotionListener = new MouseMotionAdapter() {
@Override
public void mouseDragged(MouseEvent e) {
JList eventList = (JList) e.getSource();
addSelectionInterval(eventList);
}
};
MouseListener mouseListener = new MouseAdapter() {
public void mousePressed(MouseEvent mouseEvent) {
JList eventList = (JList) mouseEvent.getSource();
int index = eventList.locationToIndex(mouseEvent.getPoint());
if (index >= -1) {
addSelectionInterval(eventList);
}
}
};
list.addMouseListener(mouseListener);
list.addMouseMotionListener(mouseMotionListener );
list.setCellRenderer(getRenderer());
list.setSelectionMode(
ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
// Set the default selection
list.addSelectionInterval(0, 0);
list.addSelectionInterval(4, 4);
JOptionPane.showMessageDialog(null, new JScrollPane(list));
}
private void addSelectionInterval(JList eventList) {
if (combinationOne.contains(eventList.getSelectedValue())) {
eventList.addSelectionInterval(0, 0);
eventList.addSelectionInterval(4, 4);
} else if (combinationTwo.contains(eventList.getSelectedValue())) {
eventList.addSelectionInterval(1, 1);
eventList.addSelectionInterval(5, 5);
} else if(combinationThree.contains(eventList.getSelectedValue())) {
eventList.addSelectionInterval(2, 2);
eventList.addSelectionInterval(6, 6);
} else if (combinationFour.contains(eventList.getSelectedValue())) {
eventList.addSelectionInterval(3, 3);
eventList.addSelectionInterval(7, 7);
}
}
private ListCellRenderer<? super String> getRenderer() {
return new DefaultListCellRenderer(){
@Override
public Component getListCellRendererComponent(JList<?> list,
Object value, int index, boolean isSelected,
boolean cellHasFocus) {
JLabel listCellRendererComponent = (JLabel) super.getListCellRendererComponent(list, value, index, isSelected,cellHasFocus);
listCellRendererComponent.setBorder(BorderFactory.createEmptyBorder());
return listCellRendererComponent;
}
};
}
}
,gif
和jpg
扩展名的用户个人资料照片,现在我想在登录后在网站上显示用户照片,来自png
标签i我无法显示所有类型的图像。
使用代码:
<img>
所以,我的计划是在控制器的文件名帮助下获取文件扩展名,然后将该字符串传递给查看文件。但是如何搜索文件以及如何从目录中获取完整的文件名?或任何其他方式?
答案 0 :(得分:2)
答案 1 :(得分:1)
你可以像使用glob一样使用:
$fileName = glob('assets/images/'.$result->imgid.'.*');
这应返回与模式匹配的文件名数组。
答案 2 :(得分:0)
如果您有文件名,那么为什么需要分析它以检索扩展名?你不能这样做:
<img src="assets/images/<?php echo $filename; ?>" />
因为这应该包含具有适当扩展名的文件名
根据您的评论,此变量可能包含路径信息。在这种情况下,这应该有效。
<img src="assets/images/<?php echo basename($filename); ?>" />
basename()
函数将从完整文件路径中检索文件名和扩展名。当然,如果你有一个完整的路径
<img src="<?php echo $filename; ?>" />