我正在尝试使用动态变量名称(我不确定它们实际上是什么名称)但是非常像这样:
for($i=0; $i<=2; $i++) {
$("file" . $i) = file($filelist[$i]);
}
var_dump($file0);
Run Code Online (Sandbox Code Playgroud)
回报null告诉我它不起作用.我不知道我正在寻找的语法或技术是什么,这使得研究变得困难.$filelist早先定义.
人们一直告诉我,我应该在所有类属性和方法之前使用公共,私有或受保护的访问修饰符.我真的不明白为什么.我很新,所以忍受我,但我看到的方式是这样的:
我是唯一一个会处理我的代码的人.不是团队.
我已经知道一切意味着什么,再加上一个编辑器告诉我所有声明的变量和属性,我知道我不会踩到我用过的变量.
我得到的一个解释是它"保护或隐藏"你的代码与那些可以看到它的人......但是在PHP中我无法让用户首先看到你的代码,我把它藏起来了吗?如果他们能看到我的代码,那么他们要么是黑客,要么是我的帐户,所以无论如何我都无法阻止他们.
我能理解我是否在团队中处理大量代码,但对于小事情来说似乎没有必要.
所以我认为我没有充分利用foreach循环.以下是我对foreach的理解.
它就像foreach(arrayyouwanttoloopthrough as onevalueofthatarray)
不需要计数器或递增,它会自动拉取一个数组,每个循环的值逐个值,并且对于该循环,它调用"as"之后的值.
一旦完成阵列就停止.
基本上应该替换"for",只要处理一个数组即可.
所以我尝试用foreach做很多事情就是修改循环数组中的数组值.但最后我一直发现我必须为这种类型的东西使用for循环.
所以,让我说我有一个数组(thing1,thing2,thing3,thing4),我想改变它....让我们对所有"BLAH"说,最后有一个数字,我会做
$counter = 0;
foreach($array as $changeval){
$counter++;
$changeval = "BLAH".$counter;
}
Run Code Online (Sandbox Code Playgroud)
我认为这会改变它,因为$ changeval应该是它对于数组的任何值,对吧?但事实并非如此.在foreach中我能找到的唯一方法是设置一个计数器(如上所述),并使用带有计数器索引的数组.但要做到这一点,我必须将计数器设置在循环外,并且它甚至不总是可靠的.为此,我认为使用for循环而不是foreach会更好.
那么你为什么要使用foreach呢?我想我在这里遗漏了一些东西因为foreach让GOT能够改变价值......
谢谢
OH HEY还有一件事.循环中是否可以在循环外设置变量(如i或key)?如果我有两个foreach循环像
foreach(作为价值的东西)
我必须做第二个
foreach(thing2 as value2)]
否则会有一些问题?
我正在考虑将字典作为关联数组,因此当我输入时
dict1 = {'first' : 1, 'second' : 2}
Run Code Online (Sandbox Code Playgroud)
我希望当我打电话给它时,它会按顺序编写,但事实并非如此.它在'第一'之前是'第二'.看了一下,发现字典是无序的.这是有道理的,但我想知道是否有办法让它们保持与您编写(或附加)的顺序相同?我在这里寻找的只是一个列表(按顺序排列),它允许字符串作为键.
谢谢
显然我对正则表达式很可怕,对我来说没有意义......
我想要一个匹配时间的表达式,就像01:23:45在字符串中一样.
我试过这个
(r'(([0-9]*2)[:])*2([0-9]*2)
Run Code Online (Sandbox Code Playgroud)
但它不起作用.我需要能够获得整个时间戳.我试过的其他人只发现了2位数字.
我正在尝试制造战舰进行练习,而单人游戏是成功的......当时只有一名玩家和一组船只和一个棋盘:P
知道为什么这给我一个'int对象是无法编写的'错误???
这是董事会课程.好吧,其中一些反正:
class Board:
'Game Board'
topMarkers = list('ABCDEFGHIJKLMNOPQRSTUVWXYZ')
sideMarkers = list(range(0, 26))
def __init__(self,h,w): #Makes the map
self.height = h
self.width = w
self.xMarkers = []
self.yMarkers = []
self.hitList = []
self.hitListCopy = []
self.boardSpace = ' '
wave = '~'
self.row = []
self.column = []
#self.column = wave * self.width # If width is 4, column is now '~~~~'
for c in range(self.width):
self.column.append(wave)
self.xMarkers.append(Board.topMarkers[c])
for r in range(self.height): #
self.row.append(self.column[:]) #Use the slice to …Run Code Online (Sandbox Code Playgroud) 嘿,好奇是有一个功能,你可以用来划分"正确的顺序",以便分红总是更大的数字?目前我这样做
x=5
y=10
z=0
if x>y{
z = x/y
}else{
z = y/x
}
Run Code Online (Sandbox Code Playgroud)
我只是想知道是否有一个功能我可以在一行中使用,比如
MakeSureDividendBigger(X/Y)
类型的东西.
谢谢
我已经在程序上工作了很长时间,从来没有自己上课.制作我自己的功能但从不反对.类对我来说太混乱了,我现在在代码中迷失了.我不明白他们应该如何让事情变得更容易,更有效率.根据我在这里编码的方式,有人可能会指出我正在做错的方向吗?
在前面的例子中,我正在制作一个盒子,并且可以投入一些东西.图书.书籍有不同的尺寸方式来安排将它们放在盒子里,所以我想要在它放入时将它对齐以确定你可以适应多少.LimitDeterminer确定如果它们全部放在相同的方向,那么它们可以适合多少,然后将与已经存在的内容进行比较.只是一个简报,代码不完整,因为我感到沮丧和困惑,这让我在这里纠正我的错误.我也认为我做错了,因为我经常要为我的功能指定对象......
谢谢
<?php
function feetToInches($feet){ //Converts feet to inches
//$feet = $feet * 12;
return $feet;
}
class Book{
var $l = 7;
var $w = 5;
var $h = 1;
var $name = "Book";
function getDimensions($x){ //Return specified dimension, input as string.
$dimensionArray = array(
"l" => $this->l,
"w" => $this->w,
"h" => $this->h
);
return $dimensionArray[$x];
}
}
class Box{
//This is a box. It has length, width, and height, and you can put things in it. …Run Code Online (Sandbox Code Playgroud) 我正在尝试从HTML下拉列表中创建一个快速的CSS样式切换器.JS是外部的,在表单之前的头部末尾调用.
我的JS:
function ChangeTheTheme(){
txt = document.getElementsByTagName("link");
switch(document.mytheme.themes.selectedIndex) {
case 0:
alert("Choice 0");
txt[0].href = "style.css";
break;
case 1:
alert("Choice 1");
txt[0].href = "style2.css";
break;
}
}
Run Code Online (Sandbox Code Playgroud)
重要的HTML行是:
<form name="mytheme">
<select name=”themes” onChange=”ChangeTheTheme();”>
Run Code Online (Sandbox Code Playgroud)
我尝试在函数的开头添加"alert("working");它向我展示了该函数根本没有被调用.
下拉列表应将CSS样式切换为当前选择的任何样式.没有按钮提交或任何东西.这就是我对onchange的理解.
谢谢