douxi2011 2016-03-28 23:30
浏览 41
已采纳

PHP从数组中获取特定值

I am currently using facebook php and am trying to get a specific page name based off of a user entered name.

For example lets say I have an array of (Apple,Orange,Pear). I have a variable $var = "Pea". How would i set a new variable lets say result = Pear. At the moment I am hardcoding in the exact facebook page name like so :

    if($key['name']=="Exact Page Name HERE"){
        $post = $fb->post('/' . $key['id'] . '/feed',$params, $key['access_token']);
        $post = $post->getGraphNode()->asArray();
        echo ("Post successful");
    }

My goal is to be able to get the array of user managed pages from facebook and then compare the name of each page to the user entered variable and set the page name = to the name that matches the variable the closest.

  • 写回答

1条回答 默认 最新

  • dongqu2863 2016-03-29 00:02
    关注

    You can use strpos() to see if the substring $var is in an array element. It will return 0 if $var is found at the beginning of the string.

    foreach ($array as $index => $el) {
        if (strpos($el, $var) === 0) {
            // match found, do what you want
        }
    }
    

    Make sure you use ===, not ==, because strpos returns false if the string is not found, and what you use loose comparison false == 0.

    If you want to match anywhere in the string, use strstr()

    if (strstr($el, $var)) {
        // match found, do what you want
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?