如果善于PHP的人可以建议如何在表达式中验证括号,我会徘徊:
( 5 * 3 [ 6 ) - 6]
Run Code Online (Sandbox Code Playgroud)
这是错误的表达.我需要一个功能来做到这一点.这是我到目前为止所尝试的:
<?php
function hasMatchedParenthesis($string) {
$counter1 = 0;
$counter2 = 0;
$length = strlen($string);
for ($i = 0;$i < $length; $i++) {
$char = $string[$i];
if( $char == '(' ) {
$counter1 ++;
} elseif( $char == ')' ) {
$counter1 --;
}
for($j =0;$j < $length; $j++) {
$char = $string[$j];
if( $char == '[' ) {
$counter2 ++;
} elseif( $char == ']' ) {
$counter2 --;
} …Run Code Online (Sandbox Code Playgroud) 我正在尝试构建由2个页面组成的小型网站的管理员端:index.php和更新php.在index.php上我运行查询,用数据库中的数据填充html表单,工作正常.然后我通过$ _POST将数据发送到update.php页面,在那里我尝试将这些值转换为变量,然后进行更新查询.哪个失败了.我怀疑$ _POST数组有问题 - 有些值搞砸了或者空了,但我不明白为什么.这是index.php的代码:
<?php
if (!isset($page_id)) {
echo " <p>Please select page to be edited:</p>";
$query = mysql_query("SELECT page_id, title FROM pages");
$res = mysql_fetch_array($query);
do {
printf("<p><a href='index.php?page_id=%s'>%s</a></p>", $res['page_id'], $res['title']);
} while ($res = mysql_fetch_array($query));
} else { $query = mysql_query("SELECT * FROM pages WHERE page_id = '$page_id'");
$res = mysql_fetch_array($query);
require_once 'parts/form.php';}
?>
Run Code Online (Sandbox Code Playgroud)
这是update.php的代码:
<?php
//Here I try to get POST values and assign them to variables for update
//Ths is validation that those values are …Run Code Online (Sandbox Code Playgroud)