php:使用图像读取目录,并根据文件名创建带有位置的样式规则?

php:使用图像读取目录,并根据文件名创建带有位置的样式规则?,php,css,image,Php,Css,Image,我不是一个php迷,所以我需要你的帮助来为这个问题创建最好最简单的解决方案。我有一个文件夹“path/images/headers”,其中有多个标题图像(所有图像都剪切到正确的大小)。文件名看起来像“something_right.jpg”、“xyz_left.jpg”、“dfjakdfjs_center.jpg”等等 我需要一种方法来读取此文件夹,提供一个随机图像文件,并最终创建一个样式规则,将此图像设置为背景值,并根据文件名的_下划线值设置background-X位置 <?php

我不是一个php迷,所以我需要你的帮助来为这个问题创建最好最简单的解决方案。我有一个文件夹“path/images/headers”,其中有多个标题图像(所有图像都剪切到正确的大小)。文件名看起来像“something_right.jpg”、“xyz_left.jpg”、“dfjakdfjs_center.jpg”等等

我需要一种方法来读取此文件夹,提供一个随机图像文件,并最终创建一个样式规则,将此图像设置为背景值,并根据文件名的_下划线值设置background-X位置

<?php
    function header_image() {

        $imgDir = bloginfo('template_url'); ?>/images/headers;
        $pos = 
        return "transparent url('images/headers/" . $img . "') no-repeat " . $pos . " center;"

    }
    ?>
    <style type="text/css">
        .header-image {
            background: <?php echo header_image(); ?>
        }
    </style>

知道这样做的最佳解决方案是什么吗?

这有很多,您需要一种指向每个文件的方法(类在这里可能有帮助,尤其是方法)和一种从文件名中获取值的方法(我会选择搜索每个条件的字符串)


文件夹中有/将有多少文件?

我会选择
glob
shuffle
preg\u match
,而不是
directoryinterator
strpos

这些代码似乎无效。您在函数的第一行退出了PHP,但随后您有了更多的PHP,而无需重新打开PHP标记。可能有20个左右的图像。我只需要读取它的文件名,在末尾提取_下划线值并创建这个样式规则。但是你如何决定选择哪个文件呢?随机!一些随机脚本应该可以做到这一点!看看我的建议,rand()可以帮助生成随机数,使用该随机数从DirectoryIterator->getBasename()中选择一个文件,并通过一个搜索关键字(中心、左、右)的函数运行该随机数,最好使用一个开关…这里是一个例子。冰棒波什。
background: transparent url('images/headers/xyz_right.jpg') no-repeat right center;