【问题标题】:using rest show details使用休息显示详细信息
【发布时间】:2016-07-13 12:51:03
【问题描述】:

使用 rest 想要显示有关项目的详细信息,但功能代码中有一个错误,但据我说是对的,但第 7 行有错误。我有两个代码,它们如下 index.php

<?php
header("content-Type:application/json");
include("function.php");
if(!empty($_GET['name'])){

    $name = $_GET['name'];
    $price = get_price($name);

    if(empty($price))
        deliver_response(200,"book not found",NULL);
    else
        deliver_response(200,"book found",price);
}
else{
    deliver_response(400,"invalid",NULL);
}

function deliver_response($status,$status_message,$data)
{
    header("HTTP/1.1 $status $status_message");

    $response['status']=$status;
    $response['status_message']=$status_message;
    $response['data']=$data;

    $json_response=json_encode($response);
    echo $json_response;


}
?>

功能代码

<?php
function get_price($find)
{
    $books = array(
        "java" => 300,
        "c"    => 250,
        "php"  => 350);
    for($books as $book => $price) {

        if($books == $find) {
            return $price;
            break;
        }
    }
}

?>

【问题讨论】:

    标签: php html rest restful-url


    【解决方案1】:

    您需要使用foreach 循环,而不是for 循环。而且你不需要休息,因为它永远不会到达它。另外,循环内的books 必须是book,否则你是在比较数组,而不是键。

        foreach($books as $book => $price) {
            if($book == $find) {
                return $price;
            }
        }
    

    【讨论】:

      【解决方案2】:

      这里需要改,把books改成book

       if($book==$find)
                   {
                   return $price;
                   break;
                   }
      

      同时更改foreach 而不是forforeach 语法检查本手册:http://php.net/manual/en/control-structures.foreach.php

      【讨论】:

        【解决方案3】:

        在 if 语句中使用 foreach 循环而不是 for 循环和 $book 而不是 $books。

        foreach ( $books AS $book => $price ) {
            if ( $book == $find ) {
                return $price;
            }
        }
        

        【讨论】:

          猜你喜欢
          • 2010-10-16
          • 2016-07-05
          • 1970-01-01
          • 2019-09-23
          • 1970-01-01
          • 1970-01-01
          • 2020-05-01
          • 1970-01-01
          相关资源
          最近更新 更多