草庐IT

php - 列出并展开

我正在尝试在我的网站上使用url重写,我想使用list()和explode()函数来获取正确的内容。目前我的代码如下所示:list($dir,$act)=explode('/',$url);在这种情况下,$url等于绝对url中第一个斜杠后的所有内容,即http://example.com/random/stuff=>$url=random/stuff/这会工作正常,但如果我想去http://example.com/random/然后它会在页面上打印一条通知。我如何停止显示通知是否需要使用list()函数以外的东西?现在通知是“通知:undefinedoffset:1...”感谢您的帮

php - 试图让论坛显示类别的所有子类别

这是我的论坛目前的样子:http://prntscr.com/73oicl但是,如您所见,这些类别都表示“社区”,这是不应该发生的。“测试”子类别应位于“公告和更新”子类别下。我知道问题出在哪里,但我不知道如何解决。functiongetForums($id){$currentHost="http://$_SERVER[HTTP_HOST]";$query="SELECT*FROMforums,categories";try{global$db;$stmt=$db->prepare($query);$stmt->execute();$result=$stmt->fetchAll();f

php - 使用带有 setcookie 的 explode 设置一个 cookie 具有多个名称和值

我真的不知道该怎么做来自PHPManualCookiesnamescanbesetasarraynamesandwillbeavailabletoyourPHPscriptsasarraysbutseparatecookiesarestoredontheuser'ssystem.这对我来说没问题,我得到了并且可以像下面这样使用setcookie("cookie[three]","cookiethree");setcookie("cookie[two]","cookietwo");但是这个方法会创建多个cookie,这是我不想要的PHP手册也说Considerexplode()toset

PHP explode 在一行中获取特定的索引值

我想做我们可以使用轻松访问第一个索引stristr($str,"",true);//Forphpversion>=5.3或$foo=array_shift(explode(':',$foo));或list($str)=explode("",$str);但是如何在一行中访问特定索引[1]、[2]或[3]??? 最佳答案 5.4+ 关于PHPexplode在一行中获取特定的索引值,我们在StackOverflow上找到一个类似的问题: https://stacko

php - 在html中找到一个元素并将其分解为stock

我想检索页面中的HTML元素。Showing1-12of40,923Results我必须在我的php中获取测试结果的总数。现在,我得到了h2标签之间的所有内容,并且第一次使用空格进行了explode。然后我再次用逗号展开以连接能够转换为欧洲格式的数字结果。一切都完成后,我会测试我的数字结果。define("MAX_RESULT_ALL_PAGES",1200);$queryUrl=AMAZON_TOTAL_BOOKS_COUNT.$searchMonthUrlParam.$searchYearUrlParam.$searchTypeUrlParam.urlencode($keyword

php - 在 PHP 中回显 $_SERVER ['DOCUMENT_ROOT' ] 的结束部分或最后一个文件夹

我需要使用$_SERVER['DOCUMENT_ROOT'];扫描文件和文件夹以在我的导航菜单中显示。假设我的根目录位于/home/user/public_html/website/。这是我回显根目录的方式:echo$_SERVER['DOCUMENT_ROOT'];它将显示/home/user/public_html/website/下面是我如何回显根目录中的文件夹:echo$_SERVER['DOCUMENT_ROOT'].'about/';它将显示/home/user/public_html/website/about/问题:我如何去除它一直显示到根文件夹和/或子文件夹的所有内容

php - 有效地分解和修剪长字符串,从而产生单个数组

我正在尝试创建一个消息传递系统,您可以在其中同时向单个或多个用户发送消息。从我的表单中传递的值如下所示:现在,为了将消息发布到数据库,我想将这些信息分解并修剪成三个独立的部分。所有这些都在一个数组中。我希望输出是这样的:Array[0]=1Array[1]=2Array[2]=3我试过使用explode(">",$input_value);然后使用preg_match进行修剪。但是,我最终得到了两个单独的数组。我怎样才能将这两者结合起来并得到我想要的结果?我需要它尽可能有效,因为每个用户都应该能够同时向最大数量的用户发送消息。另外,我希望能对正则表达式进行易于理解的解释,因为我觉得它有

PHP 分解字符串,但将引号中的单词视为单个单词

如何分解以下字符串:"foobar"ANDbar"foo"AND"foofoo"lorem"impsum"进入array('"foobar"','ANDbar','"foo"','AND','"foofoo"',"lorem",'"impsum"')我检查了这个答案:https://stackoverflow.com/a/2202489/11398085但如果我的字符串中没有空格链接就无法工作。$text='"foobar"ANDbar"foo"AND"foofoo"lorem"impsum"';preg_match_all('/"(?:\\\\.|[^\\\\"])*"|\S+/',

php - 不在 () 之间时分解字符串

我试图通过逗号分解一个字符串:,但只有当它不在括号(...)之间时才行。p>下面是一些代码来说明我的意思:$string="K.VisueelNr,IFNULL(P.Partijnaam,'Leeggemeld')ASPartijnaam,R.Ras,M.Maat,DATE_FORMAT(KS.Timestamp,'%d-%c-%Y')ASDatum,H.Handelshuis,KS.Actie";print_r(str_getcsv($string,'()'));print_r(explode(",",$string));输出:Array([0]=>K.VisueelNr,IFNUL

php - 使用相同的参数时,explode 是否等同于 implode?

假设我有以下功能:publicfunctionnormalize($string){$substrings=explode(",",$string);returnimplode(",",$substrings);}($string==normalize($string))会永远为真吗?有什么特殊情况我应该考虑吗? 最佳答案 如果$string是一个字符串,是的。否则可能会发生类型转换:implode(",",explode(",",0))这将导致“0”,因此$string!==normalize($string)但$string==