所以过去几天我一直在积极学习PHP,并且为了练习,我编写了PHP脚本,它采用HTML表单值。我试着写脚本,我有5个人,你必须输入你的名字和姓氏。如果它与五个人中的一个相匹配,则发送一条消息,如果不匹配,则发送另一条消息。这是(没有表单部分,只有PHP):$first=$_POST["first"];$last=$_POST["last"];if($first=="Jeb"){if($last=="Jeb"){print"Hello!";}else{print"Idontknowyou!";}}elseif($first=="Bob"){if($last=="Bob"){print"He
简介我正在尝试更好地理解我对Php的了解,并使用类来更好地编写我的代码,因此这只是一个练习,目的是为了更好地理解而不是一个真实世界的解决方案。简介我正在从我刚刚学会的类中调用一个函数,但我想知道执行一些简单任务(例如在IF语句中使用该对象)的最佳方法。场景例如,我正在设置我的类:classuser{//GetusersIDfunctionget_user_id(){global$conn;$sql='SELECTidFROMuser';$result=$conn->query($sql);if($result->num_rows>0){while($row=$result->fetch
我有如下特定条件。>80categoryA71-80categoryAB51-70categoryB41-50categoryBC我需要编写满足上述条件的代码。但只有与1如果2否则如果1其他我想通了,我需要设置默认类别值,但仍然不符合预期的结果$category="C";$value="10";if($value>80){$category="A";}elseif($value50){$category="B";}elseif($value70){$category="AB";}else{$category="BC";}echo$category;我想这样输出90=A72=AB55=B
我的观点之一是这样的>SOME_TEXT这会导致语法错误,意外的T_ECHO。为print更改echo解决了这个问题,但我想了解为什么我不能使用echo。 最佳答案 你不能那样使用这个结构。ternaryoperator不是“if”block,而是根据条件是否满足返回一个值。你想改变结构:它与print()一起使用,因为这是一个具有返回值的函数。然而,这不是您想要的,因为第一个echo将打印出print的结果,这是没有意义的。它不适用于echo,因为echo不是一个函数,而是一种语言结构。
例如,在这样的PHP代码中:if($this->function1()&&$this->function2()){//everythingisalright}else{//function1orfunction2returnedfalse//whodunnit?}是否有语言结构或其他东西可以帮助我找出elseblock中的罪魁祸首?我不想再次运行条件,只是为了找出问题所在。请容忍我的伪代码。我的实际代码在这里看起来完全脱离上下文......顺便说一句,我正在使用CodeIgniter。 最佳答案 if($this->function
这个问题不太可能帮助任何future的访问者;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况有关,这些情况并不普遍适用于互联网的全局受众。为了帮助使这个问题更广泛地适用,visitthehelpcenter.关闭9年前。考虑到有问题的文件的创建有点滞后于有问题的函数,我尝试运行一个while循环来争取一点时间,然后再调用重命名。$no_file=1;while($no_file&&$no_file在这个配置中,我认为rename()只能在file_exists()返回true时被调用,但对于我的生活我无法弄清楚如何/为什么rename()被调用然后返回失败...PHPWa
假设我正在创建注册表单。我有如下代码,由于所有嵌套的if语句,很难管理。我想知道最简洁、最容易遵循的方法来编写功能类似于我下面的代码。编辑:人们告诉我可以将空的($_POST['email'])移动到验证函数。我不能那样做,因为我需要知道1)用户是否发布了数据,以及2)用户发布的数据是否有效。例如,当用户第一次进入注册页面时,他们没有发布任何数据,因此$_POST['email']将生成PHP警告,因为它们不存在。这就是我在验证之前检查数据是否已发布的原因。这有意义吗?functionvalidate_email($str){$str=trim(strtolower($str));if
我已经尝试使用正则表达式/^(\S+)(?:\?$|$)/使用yolo和yolo?两者都适用,但在第二个字符串(yolo?)上,?将包含在捕获组(\S+)中。这是正则表达式的错误还是我犯了一些错误?编辑:我不想要那个'?'包含在捕获组中。抱歉我的英语不好。 最佳答案 您可以使用如果您要捕获的内容中不能包含?,请使用否定字符类[^...](参见demohere):^([^\s?]+)\??$如果你想要捕获的内容可以包含?(例如,yolo?yolo?,你想要yolo?yolo),您需要通过添加?使量词+为lazy(参见demohere)
我正在尝试用Blade编写一个if()条件,我有这个:@foreach($usersas$user){{$user->id}}{{$user->username}}{{$user->email}}id}}">Supprimerlemembre@if({{$user->admin}}==0)id}}">Passerl'utilisateurAdmin@elseid}}">Retirerl'adminàl'utilisateur@endif@endforeach我想检查用户是否是管理员(我的用户表中的列)但是if返回3个错误:第一个:if(^here{{$user->admin}}==0)
我正在尝试根据模式确定一个或多个匹配项是否存在于数组中,数组的例子:Array([author_id]=>1[channel_id]=>1[site_id]=>1[entry_id]=>6[url_title]=>test_title_with_file2[title]=>TestTitlewithfile[field_id_1_directory]=>1[field_id_4_directory]=>1[submit]=>Submit[entry_date]=>1278219110)我想确定field_id_x_directory键或多个键是否存在,如果存在,则循环遍历每个键并运行一