php文件名和类名相同时include不起作用?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php文件名和类名相同时include不起作用?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含4275字,纯文字阅读大概需要7分钟。
内容图文
![php文件名和类名相同时include不起作用?](/upload/InfoBanner/zyjiaocheng/192/605efd6c50214cabaa3207645a29e3a1.jpg)
修改为validate.php后可以正常显示验证码,
浏览器中请求code.php文件中进行显示验证码
width = $width;
$this->height = $height;
$this->num_chars = $num_chars;
}
function showImage(){
$this->createImage();
$this->drawBorder();
$this->drawChars();
$this->outPic();
}
//create canvas
function createImage(){
$this->image = imagecreate($this->width,$this->height);
//$rand_color = imagecolorallocate($this->image,rand(0,255),rand(0,255),rand(0,255));
$back = imagecolorallocate($this->image,0,0,0);
$border = imagecolorallocate($this->image,255,255,255);
imagefill($this->image,0,0,$back);
//imagefilledrectangle($thid->image,self::BORDER,self::BORDER,$this->width-self::BORDER,$this->height-self::BORDER,$border);
//imageline($this->image,1,1,100,100,$rand_color);
//$this->outPic();
}
//draw border
private function drawBorder(){
$outer_bg_color = imagecolorallocate($this->image,0,0,0);
$inner_bg_color = imagecolorallocate($this->image,255,255,255);
imagefill($this->image,0,0,$outer_bg_color);
imagefilledrectangle($this->image,self::BORDER,self::BORDER,$this->width-self::BORDER-1,$this->height-self::BORDER-1,$inner_bg_color);
}
//create char content
function createChar(){
$rand_ascii="";
$rand_type = rand(0,2);
switch($rand_type){
case 0:
$rand_ascii = rand(48,57);
break;
case 1:
$rand_ascii = rand(65,90);
break;
case 2:
$rand_ascii = rand(97,122);
break;
}
$rand_str = sprintf("%c",$rand_ascii);
return $rand_str;
}
//draw char
private function drawChars(){
$x = $this->width/$this->num_chars+1;
$y = $this->height/2;
for($index = 0; $index<$this->num_chars; $index++){
$rand_color = imagecolorallocate($this->image,rand(0,255),rand(0,255),rand(0,255));
imagechar($this->image,3,$x*$index+2,$y-$y/2,$this->createChar(),$rand_color);
}
}
//out pic
private function outPic(){
header("content-type:image/png");
imagepng($this->image);
}
function __destruct(){
imagedestroy($this->image);
}
}
/*$code = new ValidationCode();
//echo $code->createChar();
$code->showImage();*/
?>
code.php
createChar();
$code->showImage();
?>
这个问题已被关闭,原因:已经自己找到问题原因
回复内容:
文件名:原来为ValidationCode.php
修改为validate.php后可以正常显示验证码,
浏览器中请求code.php文件中进行显示验证码
width = $width;
$this->height = $height;
$this->num_chars = $num_chars;
}
function showImage(){
$this->createImage();
$this->drawBorder();
$this->drawChars();
$this->outPic();
}
//create canvas
function createImage(){
$this->image = imagecreate($this->width,$this->height);
//$rand_color = imagecolorallocate($this->image,rand(0,255),rand(0,255),rand(0,255));
$back = imagecolorallocate($this->image,0,0,0);
$border = imagecolorallocate($this->image,255,255,255);
imagefill($this->image,0,0,$back);
//imagefilledrectangle($thid->image,self::BORDER,self::BORDER,$this->width-self::BORDER,$this->height-self::BORDER,$border);
//imageline($this->image,1,1,100,100,$rand_color);
//$this->outPic();
}
//draw border
private function drawBorder(){
$outer_bg_color = imagecolorallocate($this->image,0,0,0);
$inner_bg_color = imagecolorallocate($this->image,255,255,255);
imagefill($this->image,0,0,$outer_bg_color);
imagefilledrectangle($this->image,self::BORDER,self::BORDER,$this->width-self::BORDER-1,$this->height-self::BORDER-1,$inner_bg_color);
}
//create char content
function createChar(){
$rand_ascii="";
$rand_type = rand(0,2);
switch($rand_type){
case 0:
$rand_ascii = rand(48,57);
break;
case 1:
$rand_ascii = rand(65,90);
break;
case 2:
$rand_ascii = rand(97,122);
break;
}
$rand_str = sprintf("%c",$rand_ascii);
return $rand_str;
}
//draw char
private function drawChars(){
$x = $this->width/$this->num_chars+1;
$y = $this->height/2;
for($index = 0; $index<$this->num_chars; $index++){
$rand_color = imagecolorallocate($this->image,rand(0,255),rand(0,255),rand(0,255));
imagechar($this->image,3,$x*$index+2,$y-$y/2,$this->createChar(),$rand_color);
}
}
//out pic
private function outPic(){
header("content-type:image/png");
imagepng($this->image);
}
function __destruct(){
imagedestroy($this->image);
}
}
/*$code = new ValidationCode();
//echo $code->createChar();
$code->showImage();*/
?>
code.php
createChar();
$code->showImage();
?>
测试:入口代码
createChar();
$code->showImage();
文件名:
测试结果:
结论:include的时候文件名跟类名没有关系。结果是可以的。我不知道你的为什么不可以。但是我测了是可以的。
真的假的啊!文件名和类名一样引用不起作用,这么神奇!有没有出什么错误提示
内容总结
以上是互联网集市为您收集整理的php文件名和类名相同时include不起作用?全部内容,希望文章能够帮你解决php文件名和类名相同时include不起作用?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。