我的问题是下一个系统完全正常工作,但我遇到了问题。 $itemhex
在循环1时只给出一个数字,它的问题因为1E10020F9865140000E000FFFFFFFFFF
1F10020F9865140000E000FFFFFFFFFF
8810020F9865140000E000FFFFFFFFFF
8D10020F9865140000E000FFFFFFFFFF
可以是8,16,24,32个字符长,但它总是分裂,所以输出是:
<?php
$loop=1;
$randarray=array();
for($i=1;$i<=$loop;){
unset($rand);
$rand=rand(100000, 999999);
if(!in_array($rand, $randarray)){
$randarray[]=$rand;
$i++;
}
}
$itemhexzero='0000E000FFFFFFFFFF';
$items = array();
for($i=0;$i<count($randarray);$i++) {
$test = array();
$itemhex='1E10020F1F10020F8810020F8D10020F';
$arr2 = str_split($itemhex,8);
for($k=0;$k<=count($arr2)-1;$k++){
$test []=$arr2[$k];
$items []= $test[$k].$randarray[$i].$itemhexzero.'<br>';
}
}
$itemcode=implode("",$items);
echo $itemcode;
?>
行数是okey,但&#34;随机&#34;数字是相同的,我怎么能解决它有不同的随机数?
如果loop1和$ itemhex只有8个字符长,它的okey,或者如果loop2等。 只有当循环或更多但$ itemhex超过8个字符时出现问题。
#include "texture.h"
#define STB_IMAGE_IMPLEMENTATION
#include "stb_image.h"
#include <iostream>
Texture::Texture()
{
}
Texture::~Texture()
{
glDeleteTextures(1, &_texture);
}
void Texture::Init(const std::string& filename)
{
int width, height, numComponents;
unsigned char* data = stbi_load(filename.c_str(), &width, &height,
&numComponents, 4);
if (data == NULL)
std::cerr << "Unable to load texture: " << filename << std::endl;
glGenTextures(1, &_texture);
glBindTexture(GL_TEXTURE_2D, _texture);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height,
0, GL_RGBA, GL_UNSIGNED_BYTE, data);
stbi_image_free(data);
}
void Texture::Bind(unsigned int unit)
{
glBindTexture(GL_TEXTURE_2D, _texture);
}
void Texture::DelTexture()
{
glDeleteTextures(1, &_texture);
}